*.ini 文件 与 WritePrivateProfileString()和GetPrivateProfileString()
2010-11-22 10:24
483 查看
INI就是扩展名为"INI"的文件, 该文件主要存放用户所做的选择以及系统的各种参数. 用户可以通过修改INI文件,来改变应用程序和系统的很多配置.
C#命名空间中没有直接读写INI的类,当然如果你把INT当成文本文件用System.IO类来读写可以直接break.
而在"kernel32.dll"这个文件中有Win32的API函数--WritePrivateProfileString()和GetPrivateProfileString()可以对*.ini类型的文件进行读写操作.
申明写操作函数WritePrivateProfileString():
[DllImport( "kernel32" )]
///section:INI文件中的段落
///key:INI文件中的关键字
///val:INI文件中关键字的数值
///filePath:INI文件的完整的路径和名称
private static extern long WritePrivateProfileString ( string section ,string key , string val , string filePath )
申明读操作函数GetPrivateProfileString():
[DllImport("kernel32")]
///section:INI文件中的段落名称
///key:INI文件中的关键字
///def:无法读取时候时候的缺省数值
///retVal:读取数值
///size:数值的大小
///filePath:INI文件的完整路径和名称
private static extern int GetPrivateProfileString ( string section , string key , string def , StringBuilder retVal , int size , string filePath )
以下为*.ini文件的操作类
public class INIClass
{
public string inipath;
[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);
/// <summary>
/// </summary>
/// <param name="INIPath">文件路径</param>
public INIClass(string INIPath)
{
inipath = INIPath;
}
/// <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,this.inipath);
}
/// <summary>
/// 读INI文件
/// </summary>
/// <param name="Section">段落名称</param>
/// <param name="Key">关键字</param>
public string IniReadValue(string Section,string Key)
{
StringBuilder temp = new StringBuilder(500);
int i = GetPrivateProfileString(Section,Key,"",temp,500,this.inipath);
return temp.ToString();
}
/// <summary>
/// 验证文件是否存在
/// </summary>
public bool ExistINIFile()
{
return File.Exists(inipath);
}
}
C#命名空间中没有直接读写INI的类,当然如果你把INT当成文本文件用System.IO类来读写可以直接break.
而在"kernel32.dll"这个文件中有Win32的API函数--WritePrivateProfileString()和GetPrivateProfileString()可以对*.ini类型的文件进行读写操作.
申明写操作函数WritePrivateProfileString():
[DllImport( "kernel32" )]
///section:INI文件中的段落
///key:INI文件中的关键字
///val:INI文件中关键字的数值
///filePath:INI文件的完整的路径和名称
private static extern long WritePrivateProfileString ( string section ,string key , string val , string filePath )
申明读操作函数GetPrivateProfileString():
[DllImport("kernel32")]
///section:INI文件中的段落名称
///key:INI文件中的关键字
///def:无法读取时候时候的缺省数值
///retVal:读取数值
///size:数值的大小
///filePath:INI文件的完整路径和名称
private static extern int GetPrivateProfileString ( string section , string key , string def , StringBuilder retVal , int size , string filePath )
以下为*.ini文件的操作类
public class INIClass
{
public string inipath;
[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);
/// <summary>
/// </summary>
/// <param name="INIPath">文件路径</param>
public INIClass(string INIPath)
{
inipath = INIPath;
}
/// <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,this.inipath);
}
/// <summary>
/// 读INI文件
/// </summary>
/// <param name="Section">段落名称</param>
/// <param name="Key">关键字</param>
public string IniReadValue(string Section,string Key)
{
StringBuilder temp = new StringBuilder(500);
int i = GetPrivateProfileString(Section,Key,"",temp,500,this.inipath);
return temp.ToString();
}
/// <summary>
/// 验证文件是否存在
/// </summary>
public bool ExistINIFile()
{
return File.Exists(inipath);
}
}
相关文章推荐
- INI文件编程,WINAPI函数WritePrivateProfileString,GetPrivateProfileString
- INI文件编程,WINAPI函数WritePrivateProfileString,GetPrivateProfileString(转帖)
- INI文件编程,WINAPI函数WritePrivateProfileString,GetPrivateProfileString
- WinAPI: WritePrivateProfileString、GetPrivateProfileString - 简单读写 Ini 文件
- INI文件编程,WINAPI函数WritePrivateProfileString,GetPrivateProfileString
- MFC读写ini配置文件(WritePrivateProfileString,GetPrivateProfileString,GetPrivateProfileInt)
- 利用WritePrivateProfileString和GetPrivateProfileString读写配置文件.ini
- INI文件编程,WINAPI函数WritePrivateProfileString,GetPrivateProfileString
- 利用GetPrivateProfileString/WritePrivateProfileString读写配置文件(.ini)
- C++读写ini配置文件GetPrivateProfileString()&WritePrivateProfileString()
- INI文件编程,WINAPI函数WritePrivateProfileString,GetPrivateProfileString
- C++读写ini配置文件GetPrivateProfileString()&WritePrivateProfileString()
- INI文件编程,WINAPI函数WritePrivateProfileString,GetPrivateProfileString
- C 语言实现读配置文件(.ini)函数,替代GetPrivateProfileString,WritePrivateProfileString
- INI文件编程,WINAPI函数WritePrivateProfileString,GetPrivateProfileString
- INI文件编程,WINAPI函数WritePrivateProfileString,GetPrivateProfileString
- 【转】INI文件编程,WINAPI函数WritePrivateProfileString,GetPrivateProfileString
- INI文件编程,WINAPI函数WritePrivateProfileString,GetPrivateProfileString
- WritePrivateProfileString和GetPrivateProfileString读写ini配置文件
- 【转载】C++读写ini配置文件GetPrivateProfileString()&WritePrivateProfileString()