公交车上荫蒂添的好舒服的电影-公用玩物(np双xing总受)-公用小荡货芊芊-公与妇仑乱hd-攻把受做哭边走边肉楼梯play-古装一级淫片a免费播放口

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

C# 操作INI文件

admin
2023年10月7日 10:19 本文熱度 1012

導讀

.NET程序中,可以作為配置文件使用的格式又很多,INI文件在某些場景應用較為廣泛,如串口參數、一些工作站本地參數等等,INI文件主要用途為讀取指定節點的配置內容,以及修改指定節點。一下文章主要描述在程序對INI文件的操作。


INI文件介紹

INI文件

  • ini文件本質上就是一個擴展名為ini的文本文檔,也可以當成記事本來操作。
  • 與文本文檔的區別在于,ini文件有自己的格式。

INI文件結構

  • INI文件由段落(section)、鍵(key)、值(value)組成
  • section為段落名稱,也可以理解為一個分組的標題。中括號表示。例如:[IPLIST]
  • 鍵和值以key=nalue的形式表示,每個段落可以有多個鍵值對;

INI文件格式示例

[section_A] 

key1=value1 

key2=value2 

key3=value3 

[section_B] 

key1=value1 

key2=value2 

key3=value3 

... ... ... ...

[IPLIST]
k1=127.0.0.1
k2=127.0.0.2
k3=127.0.0.3
;IP列表

每行開頭添加 ";"為注釋

在C#中操作INI文件

在C#命名空間中沒有專門操作INI文件的類,但在kernel32.dll中,有Win32的API函數對文件的操作

  • WritePrivateProfileString():寫操作函數
  • GetPrivateProfileString():讀操作函數

寫操作函數說明

函數聲明

DllImport需引入命名空間 using System.Runtime.InteropServices;

        /// <summary>
        /// 修改INI文件內容
        /// </summary>
        /// <param name="lpApplicationName">節點名稱(段落名稱)section</param>
        /// <param name="lpKeyName">要設置的項名,Key</param>
        /// <param name="lpString">要寫入的新字符串Value</param>
        /// <param name="lpFileName">INI文件晚掙路徑</param>
        /// <returns>0表示失敗,非零表示成功</returns>
        [DllImport("kernel32")]
        private static extern long WritePrivateProfileString
            (string lpApplicationName, 
            string lpKeyName, 
            string lpString, 
            string lpFileName
)
;
調用
        /// <summary>
        /// 保存ini
        /// </summary>
        /// <param name="section">節點/段落名稱</param>
        /// <param name="key">項/Key名稱</param>
        /// <param name="value"></param>
        /// <param name="filePath">ini文件路徑</param>
        public static void WriteIniKeys(string section, string key, string valuestring filePath)
        {
            WritePrivateProfileString(section, key, value, filePath);
        }

        /*
         * 若value為null則會刪除配置文件中對應的key
         * 若key value為null則會刪除對應的section
        */

讀操作函數說明

函數聲明

DllImport需引入命名空間 using System.Runtime.InteropServices;

        /// <summary>
        /// 獲取INI中指定字符串
        /// </summary>
        /// <param name="lpAppName">節點名稱(段落名稱)section</param>
        /// <param name="lpKeyName">項名,Key</param>
        /// <param name="lpDefault">未找到指定項時返回的默認值</param>
        /// <param name="lpReturnedString">指定一個字符串緩沖區,長度至少為nSize</param>
        /// <param name="nSize">指定裝載到lpReturnedString緩沖區的最大字符數量</param>
        /// <param name="lpFileName">INI文件路徑</param>
        /// <returns>復制到lpReturnedString中的字節數量</returns>
        [DllImport("kernel32")]
        private static extern int GetPrivateProfileString
            (string lpAppName,
            string lpKeyName,
            string lpDefault,
            StringBuilder lpReturnedString,
            int nSize,
            string lpFileName
)


調用
        /// <summary>
        /// 根據section,key取值,并設置默認值
        /// </summary>
        /// <param name="section">節點/段落名稱</param>
        /// <param name="key">項/Key名稱</param>
        /// <param name="def">默認值</param>
        /// <param name="filePath">文件路徑</param>
        /// <returns>返回指定內容,若不存在則返回默認值def</returns>
        private static string ReadIniKeys(string section, string key, string def, string filePath)
        {
            StringBuilder temp = new StringBuilder(1024);
            GetPrivateProfileString(section, key, def, temp, 1024, filePath);
            return temp.ToString();
        }

以上為C#讀寫INI的實現方法,針對此方法編寫了幫助類,項目已上傳至Gitee

地址 :https://gitee.com/yang-yong-666/csharp

類文件:YYIniHelper.INIHelper.cs


個人交流QQ:1695690324

原創不易,轉載請注明出處

博客園:https://www.cnblogs.com/yangyongdashen-S/

CSDN:https://blog.csdn.net/weixin_44312699?spm=1010.2135.3001.5343

Gitee:https://gitee.com/yang-yong-666

公眾號:yi人夕岸


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

主站蜘蛛池模板: 国产成人精品日本亚洲专一区 | 国产无内肉丝精品视频 | 国产精品亚洲午夜不卡 | 国产成人a区在线观看视频 国产成人a人 | 99久久精品免费观看国产 | 国产亚洲日本人在线观看 | 精品麻豆一二三区 | 国产福利观看 | 成年人无码三级片视频网 | 国产精品福利免费 | 国产精品视频第一区二区三区 | 国产成人福利一区二区三区 | 国产欧美日韩视频在 | 国产精品免费一区二区三区观看 | 国产成人av一区 | 成人午夜高潮免费视频试看 | 国产对白叫床清晰在线播放中 | 国产专区视频在线观看 | 国产成人精品久 | 国产一区二区三区日韩精品 | 2025国产成人久久精品 | av无码成人精品区在线观看 | 国产成人精品优优av | 国产精品无遮自慰 | 精品日本三级乱伦 | 99久久精品免费看国产四区 | 91老司机深夜福利精品视 | 国产片婬乱一级毛片视频1 国产片婬乱一级毛片丫丫 国产片婬乱一毛片a | 国产a级毛片免费视频一区二区 | 国产一区二区三区免费看视频 | 国产精品乱码一区二区 | 国产精品成人欧美激情 | 91精品国产综合久久婷婷 | 91精品在线免费视频 | 国产精品久久久久久人妻黑料 | 91综合中文字幕一区二区三区 | 国产寡妇高潮一级毛 | 国产成人精品日本亚洲专区不卡 | 国产高清不卡一区二区 | 国产自啪精品视频. | 精品少妇人妻一区二区黑料社区 |