最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C#對INI文件進行讀寫操作的示例代碼

 更新時間:2024年02月01日 17:15:06   作者:lingxiao16888  
這篇文章主要為大家詳細介紹了C#對INI文件進行讀寫操作的相關知識,文中的示例代碼講解詳細,具有一定的學習價值,有需要的小伙伴可以參考一下

1.通過調用API函數(shù)完成對INI文件的讀取,修改,寫入操作

 string filePath;
        private void btnModify_Click(object sender, EventArgs e)
        {
            if (string.IsNullOrEmpty(filePath) || !File.Exists(filePath))
            {
                using (SaveFileDialog sfd=new SaveFileDialog())
                {                    
                    sfd.Filter= "初始化文件(*.INI)|*.INI";
                    if (sfd.ShowDialog() == DialogResult.OK)
                    {
                        FileStream fs = System.IO.File.Create(sfd.FileName);
                        fs.Dispose();
                        filePath = sfd.FileName;
                    }
                }
            }
            INIHelper.WriteToINI(filePath, "ConnectString", "Data Source", txtServer.Text);
            INIHelper.WriteToINI(filePath, "ConnectString", "DataBase", txtDataBase.Text);
            INIHelper.WriteToINI(filePath, "ConnectString", "Uid", txtSid.Text);
            INIHelper.WriteToINI(filePath, "ConnectString", "Pwd", txtPwd.Text);
            MessageBox.Show("保存成功!");
        }
 
        private void Form1_Load(object sender, EventArgs e)
        {
 
        }
 
        private void toolStripButton1_Click(object sender, EventArgs e)
        {
            using(OpenFileDialog ofd=new OpenFileDialog())
            {
                ofd.Filter = "初始化文件(*.INI)|*.INI";
                ofd.Multiselect = false;
                if (ofd.ShowDialog() == DialogResult.OK)
                {
                     filePath = ofd.FileName;
                    string source = INIHelper.ReadFromINI(filePath, "ConnectString", "Data Source");
                    string dataName= INIHelper.ReadFromINI(filePath, "ConnectString", "DataBase");
                    string uid= INIHelper.ReadFromINI(filePath, "ConnectString", "Uid", "未設置");
                    string pwd= INIHelper.ReadFromINI(filePath, "ConnectString", "Pwd","未設置");
                    txtServer.Text = source;
                    txtDataBase.Text = dataName;
                    txtSid.Text = uid;
                    txtPwd.Text = pwd;
                }
            }
        }
    }
    /// <summary>
    /// 對INI文件進行讀寫
    /// </summary>
    class INIHelper
    {
        /// <summary>
        /// 從INI文件中讀取數(shù)據(jù)
        /// </summary>
        /// <param name="filePath">INI文件的全路徑</param>
        /// <param name="rootValue">根節(jié)點值,例如根節(jié)點[ConnectString]的值為:ConnectString</param>
        /// <param name="key">根節(jié)點下的鍵</param>
        /// <param name="defValue">當標記值未設定或不存在時的默認值</param>
        /// <returns></returns>
        public static string ReadFromINI(string filePath, string rootValue,string key,string defValue="")
        {
            StringBuilder sb = new StringBuilder(1024);
            GetPrivateProfileString(rootValue, key, defValue, sb, 1024, filePath);
            return sb.ToString();
        }
        public static void WriteToINI(string filePath, string rootValue, string key, string newVal)
        {
           
            WritePrivateProfileString(rootValue, key, newVal, filePath);
           
        }
        
        /// <summary>
        /// 對INI文件進行讀取操作
        /// </summary>
        /// <param name="IpAppName">表示INI文件內部根節(jié)點的值</param>
        /// <param name="IpKeyName">表示根節(jié)點下子標記的值</param>
        /// <param name="IpDefault">表示當標記值未設定或不存在時的默認值</param>
        /// <param name="IpReturnString">返回讀取節(jié)點的值</param>
        /// <param name="nSize">讀取的節(jié)點內容的最大容量</param>
        /// <param name="IpFileName">文件的全路徑</param>
        /// <returns></returns>
        [System.Runtime.InteropServices.DllImport("kernel32")]
        static extern int GetPrivateProfileString(string IpAppName, string IpKeyName, string IpDefault, StringBuilder IpReturnString, int nSize, string IpFileName);
        /// <summary>
        /// 對INI文件進行寫入操作
        /// </summary>
        /// <param name="mpAppName">INI文件內部根節(jié)點的值</param>
        /// <param name="mpKeyName">將要修改的標記名稱</param>
        /// <param name="mpDefault">想要修改的內容</param>
        /// <param name="mpFileName">INI文件的全路徑</param>
        /// <returns></returns>
        [System.Runtime.InteropServices.DllImport("kernel32")]
        static extern long WritePrivateProfileString(string mpAppName, string mpKeyName, string mpDefault, string mpFileName);
    }

2,INI文件的擴展名為.ini 例如:System.ini 。

3,INI文件格式如下(使用記事本打開):

[ConnectString]
Data Source=192.168.1.97
DataBase=master
Uid=sa
Pwd=1

注解:

[ConnectString] :根節(jié)點,進行讀寫時首先需要知曉根節(jié)點值(例如 [ConnectString]  根節(jié)點值為:ConnectString)

DataBase:鍵,通過該鍵可獲取該鍵對應的值,

到此這篇關于C#對INI文件進行讀寫操作的示例代碼的文章就介紹到這了,更多相關C#讀寫操作INI內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

最新評論

邵武市| 怀化市| 汉寿县| 防城港市| 镇平县| 嘉义市| 邹平县| 巴中市| 油尖旺区| 师宗县| 绵阳市| 柳河县| 黑河市| 阜平县| 云浮市| 临颍县| 新沂市| 阳谷县| 永兴县| 凤凰县| 丹巴县| 两当县| 虹口区| 郸城县| 赤水市| 杂多县| 佛冈县| 彰化市| 出国| 客服| 枝江市| 涟源市| 武威市| 怀柔区| 曲靖市| 海林市| 永城市| 河西区| 武夷山市| 石门县| 青铜峡市|