程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> 【個人使用.Net類庫】(1)INI配置文件操作類,.net類庫

【個人使用.Net類庫】(1)INI配置文件操作類,.net類庫

編輯:C#入門知識

【個人使用.Net類庫】(1)INI配置文件操作類,.net類庫


開發接口程序時,對於接口程序配置的IP地址、端口等都需要是可配置的,而在Win Api原生實現了INI文件的讀寫操作,因此只需要調用Win Api中的方法即可操作INI配置文件,關鍵代碼就是如何調用Win Api中的方法,如下所示:

#region 調用WinApi 原方法聲明
        [DllImport("kernel32")]
        private static extern long WritePrivateProfileString(string section, string key, string val, string filePath);

        [DllImport("kernel32")]
        private static extern int GetPrivateProfileString(string section, string key, string def, StringBuilder retVal, int size, string filePath);

        [DllImport("kernel32")]
        private static extern int GetPrivateProfileString(string section, string key, string defVal, Byte[] retVal, int size, string filePath);
#endregion

具體代碼如下所示(刪除段落內容是參考蘇飛論壇蘇飛大神的):

using System; using System.Text; using System.Runtime.InteropServices; namespace DotNetCommon.File { /// <summary> /// 類說明:INI文件讀寫類 /// 編碼人:鞠小軍 /// 聯系方式:[email protected] /// </summary> public class IniFileHelper { /// <summary> /// INI文件路徑 /// </summary> public string Path; /// <summary> /// 屏蔽空的構造函數 /// </summary> public IniFileHelper() { throw new Exception("不允許使用空的構造函數!"); } /// <summary> /// 構造函數,參數為INI文件路徑 /// </summary> /// <param name="path">INI文件的路徑</param> public IniFileHelper(string path) { Path = path; } #region 調用WinApi 原方法聲明 [DllImport("kernel32")] private static extern long WritePrivateProfileString(string section, string key, string val, string filePath); [DllImport("kernel32")] private static extern int GetPrivateProfileString(string section, string key, string def, StringBuilder retVal, int size, string filePath); [DllImport("kernel32")] private static extern int GetPrivateProfileString(string section, string key, string defVal, Byte[] retVal, int size, string filePath); #endregion /// <summary> /// 讀取INI文件 /// </summary> /// <param name="section">段落</param> /// <param name="key">鍵</param> /// <returns></returns> public string IniReadValue(string section, string key) { var temp = new StringBuilder(255); var i = GetPrivateProfileString(section, key, "", temp, 255, Path); return temp.ToString(); } /// <summary> /// 寫入INI文件 /// </summary> /// <param name="section">段落</param> /// <param name="key">鍵</param> /// <param name="value">值</param> public void IniWriteValue(string section, string key, string value) { WritePrivateProfileString(section, key, value, Path); } /// <summary> /// 清楚INI文件中所有的段落 /// </summary> public void ClearAllSection() { IniWriteValue(null, null, null); } /// <summary> /// 清楚INI文件中指定段落內容 /// </summary> /// <param name="section">段落</param> public void ClearSection(string section) { IniWriteValue(section, null, null); } } } View Code

怎用C#更改ini文件中的數據的值

string path = Application.StartupPath + "\\config.ini";
IniWriteValue(path,"config","password",textBox1.Text.Trim());
 

VB怎執行INI文件中的代碼?要最詳細的注釋

ini文件從來就不放代碼。是配置文件,沒有可執行的東西。
要實現執行其他的文件的代碼,那麼你寫的本來就是一個解析器。

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved