網站首頁 編程語言 正文
.ini 文件是Initialization File的縮寫,即初始化文件,是windows的系統配置文件所采用的存儲格式,統管windows的各項配置,一般用戶就用windows提供的各項圖形化管理界面就可實現相同的配置了。但在某些情況,還是要直接編輯ini才方便,一般只有很熟悉windows才能去直接編輯。
一、定義Class
using System;
using System.Runtime.InteropServices;
using System.Text;
namespace IniDemo
{
public class IniFile
{
private string m_FileName;
public string FileName
{
get
{
return this.m_FileName;
}
set
{
this.m_FileName = value;
}
}
[DllImport("kernel32.dll")]
private static extern int GetPrivateProfileInt(string lpAppName, string lpKeyName, int nDefault, string lpFileName);
[DllImport("kernel32.dll")]
private static extern int GetPrivateProfileString(string lpAppName, string lpKeyName, string lpDefault, StringBuilder lpReturnedString, int nSize, string lpFileName);
[DllImport("kernel32.dll")]
private static extern int WritePrivateProfileString(string lpAppName, string lpKeyName, string lpString, string lpFileName);
public IniFile(string aFileName)
{
this.m_FileName = aFileName;
}
public IniFile()
{
}
public int ReadInt(string section, string name, int def)
{
return IniFile.GetPrivateProfileInt(section, name, def, this.m_FileName);
}
public string ReadString(string section, string name, string def)
{
StringBuilder stringBuilder = new StringBuilder(2048);
IniFile.GetPrivateProfileString(section, name, def, stringBuilder, 2048, this.m_FileName);
return stringBuilder.ToString();
}
public void WriteInt(string section, string name, int Ival)
{
IniFile.WritePrivateProfileString(section, name, Ival.ToString(), this.m_FileName);
}
public void WriteString(string section, string name, string strVal)
{
IniFile.WritePrivateProfileString(section, name, strVal, this.m_FileName);
}
public void DeleteSection(string section)
{
IniFile.WritePrivateProfileString(section, null, null, this.m_FileName);
}
public void DeleteAllSection()
{
IniFile.WritePrivateProfileString(null, null, null, this.m_FileName);
}
public string IniReadValue(string section, string name)
{
StringBuilder stringBuilder = new StringBuilder(256);
IniFile.GetPrivateProfileString(section, name, "", stringBuilder, 256, this.m_FileName);
return stringBuilder.ToString();
}
public void IniWriteValue(string section, string name, string value)
{
IniFile.WritePrivateProfileString(section, name, value, this.m_FileName);
}
}
}
二、調用方法
IniFile iniFile = new IniFile(Environment.CurrentDirectory + "\\LocalInf.ini");
//讀取Local節點下M的值,默認為空值
string m = iniFile.ReadString("Local", "M", "");
//Local節點下寫F=f
iniFile.WriteString("Local", "F", "f");
//讀取Local節點下IsSleep的字符串值,并轉為bool類型值,給出默認值為False
bool f = bool.Parse(iniFile.ReadString("Local", "IsSleep", "False"));
//讀取Local節點下的C的字符串值,并轉為double類型值,給出默認值0
bool f = double.Parse(iniFile.ReadString("Local", "C", "0"));
原文鏈接:https://www.cnblogs.com/wml-it/p/15618356.html
相關推薦
- 2022-09-01 Python利用appium實現模擬手機滑動操控的操作_python
- 2022-10-11 Flutter?語法進階抽象類和接口本質區別詳解_Dart
- 2022-08-10 etcd通信接口之客戶端API核心方法實戰_Golang
- 2021-12-06 Android?CameraX?打開攝像頭預覽功能_Android
- 2022-07-20 輕松手寫Spring的IOC
- 2022-06-22 使用docker?compose一鍵部署WordPress博客的方法_docker
- 2022-06-09 詳解Python中*args和**kwargs的使用_python
- 2022-03-21 SQL查詢連續登陸7天以上的用戶的方法實現_MsSql
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支