【.NET】存取 INI 設定檔

  • 2604
  • 0
  • 2017-08-11

  整理信箱時發現一封多年前寄給自己的信,內容是 .NET 如何讀寫 INI 設定檔。

  既然看到了,就順便整理並記錄下來。

1、建立 INI 設定檔

  參考 INI file 建立一份 INI 設定檔。

01:Lab_ini

2、存取 INI 設定檔

02:INIAccess

2.1 取得 value

  引用外部方法 GetPrivateProfileString,方法參數如下:

  • lpAppName:section 名稱。
  • lpKeyName:key 名稱。
  • lpDefault:預設值。
    • 找不到 value 時,會回傳此預設值。
  • lpReturnedString:回傳值,以指標方式回傳。
    • 使用 StringBuilder 接收,記憶體大小需要先規劃預期大小。
  • nSize:回傳值的記憶體大小。
  • lpFileName:設定檔路徑。
    • 設定檔不存在時,會回傳預設值。
2.2 修改 value

  引用外部方法 WritePrivateProfileString,方法參數如下:

  • lpAppName:section 名稱。
    • 傳入 section 名稱不存在時,會建立一個新的 section。
  • lpKeyName:key 名稱。
    • 傳入 key 名稱不存在時,會建立一個新的 key。
    • 傳入 key 名稱為 null 時,會將整組 section 刪除。
  • lpString:value 值。
    • 傳入 value 值為 null 時,會將整個 key 刪除。
  • lpFileName:設定檔路徑。
    • 設定檔不存在時,會建立一個新的 INI 設定檔。
大部分的情況回傳值均為 true,只有在傳入 section 名稱為 null 時會回傳 false。期望依據回傳值來判斷是否修改成功都是假象,直接開啟 INI 設定檔確認比較安心。

嘗試將自己的理解寫成文字紀錄,資料來源均來自於網路。

如有理解錯誤、引用錯誤或侵權,請多加指正與告知,讓我有更多的進步與改進的空間,謝謝!