狠狠色丁香婷婷综合尤物/久久精品综合一区二区三区/中国有色金属学报/国产日韩欧美在线观看 - 国产一区二区三区四区五区tv

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發文檔 其他文檔  
 
網站管理員

C# WinForm程序中讀寫INI配置文件的技術詳解

admin
2024年3月26日 18:36 本文熱度 706

在C# WinForm應用程序中,INI文件常被用作簡單的配置文件,用于存儲應用程序的設置和參數。INI文件是一種文本文件,其結構通常包括節(Sections)和鍵值對(Key-Value Pairs)。每個節都包含一個或多個鍵值對,用于存儲相關的配置信息。

本文將介紹如何在C# WinForm程序中讀取和寫入INI配置文件,包括創建INI文件、讀取INI文件中的數據以及向INI文件中寫入數據。

一、INI文件的基本結構

INI文件的基本結構非常簡單,由節(Sections)和鍵值對(Key-Value Pairs)組成。每個節由方括號包圍,例如[SectionName],而鍵值對則是以等號=分隔的字符串,例如Key=Value。下面是一個簡單的INI文件示例:

[AppSettings]
Setting1=Value1
Setting2=Value2

[Database]
Server=localhost
Port=3306

在這個示例中,有兩個節:AppSettingsDatabase。每個節下都有一些鍵值對,用于存儲配置信息。

二、讀取INI文件中的數據

在C#中,可以使用System.Configuration命名空間下的IniFile類或者System.IO命名空間下的文件操作方法來讀取INI文件中的數據。這里我們使用System.IO的方法來實現。

using System;
using System.IO;
using System.Text;
using System.Collections.Generic;

public class IniFileReader
{
    private string filePath;

    public IniFileReader(string filePath)
    {
        this.filePath = filePath;
    }

    public string ReadValue(string section, string key)
    {
        string value = string.Empty;
        if (File.Exists(filePath))
        {
            var lines = File.ReadAllLines(filePath, Encoding.Default);
            foreach (var line in lines)
            {
                var trimmedLine = line.Trim();
                if (trimmedLine.StartsWith("[") && trimmedLine.EndsWith("]"))
                {
                    var currentSection = trimmedLine.Substring(1, trimmedLine.Length - 2);
                    if (currentSection == section)
                    {
                        var keyValue = line.Split('=');
                        if (keyValue.Length == 2 && keyValue[0].Trim() == key)
                        {
                            value = keyValue[1].Trim();
                            break;
                        }
                    }
                }
            }
        }
        return value;
    }
}

使用上述IniFileReader類,你可以像下面這樣讀取INI文件中的數據:

var reader = new IniFileReader("path_to_your_file.ini");
string setting1Value = reader.ReadValue("AppSettings""Setting1");
Console.WriteLine(setting1Value); // 輸出: Value1

三、向INI文件中寫入數據

向INI文件中寫入數據同樣可以使用System.IO命名空間下的文件操作方法來實現。下面是一個簡單的示例:

using System;
using System.IO;
using System.Text;

public class IniFileWriter
{
    private string filePath;

    public IniFileWriter(string filePath)
    {
        this.filePath = filePath;
    }

    public void WriteValue(string section, string key, string value)
    {
        var lines = new List<string>();
        bool isSectionFound = false;

        if (File.Exists(filePath))
        {
            lines = File.ReadAllLines(filePath, Encoding.Default).ToList();
        }

        foreach (var line in lines)
        {
            var trimmedLine = line.Trim();
            if (trimmedLine.StartsWith("[") && trimmedLine.EndsWith("]"))
            {
                var currentSection = trimmedLine.Substring(1, trimmedLine.Length - 2);
                if (currentSection == section)
                {
                    isSectionFound = true;
                    var keyValueLine = $"{key}={value}";
                    int index = lines.IndexOf(line);
                    lines.Insert(index + 1, keyValueLine);
                    break;
                }
            }
        }

        if (!isSectionFound)
        {
            lines.Add($"[{section}]");
            lines.Add($"{key}={value}");
        }

        File.WriteAllLines(filePath, lines, Encoding.Default

該文章在 2024/3/26 18:36:05 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業的專業生產管理軟件系統,系統成熟度和易用性得到了國內大量中小企業的青睞。
點晴PMS碼頭管理系統主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業務管理,結合碼頭的業務特點,圍繞調度、堆場作業而開發的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業的高效ERP管理信息系統。
點晴WMS倉儲管理系統提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統,標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協同辦公管理系統。
Copyright 2010-2025 ClickSun All Rights Reserved