C#读写INI文件的方法

2019-12-26 13:35:00王冬梅
  • catch  { 
  • throw (new ApplicationException("Ini文件不存在"));  } 
  • }  //必须是完全路径,不能是相对路径 
  • FileName = fileInfo.FullName;  } 
  • //写INI文件  public void WriteString(string Section, string Ident, string Value) 
  • {  if (!WritePrivateProfileString(Section, Ident, Value, FileName)) 
  • {  throw (new ApplicationException("写Ini文件出错")); 
  • }  } 
  • //读取INI文件指定  public string ReadString(string Section, string Ident, string Default) 
  • {  Byte[] Buffer = new Byte[65535]; 
  • int bufLen = GetPrivateProfileString(Section, Ident, Default, Buffer, Buffer.GetUpperBound(0), FileName);  //必须设定0(系统默认的代码页)的编码方式,否则无法支持中文 
  • string s = Encoding.GetEncoding(0).GetString(Buffer);  s = s.Substring(0, bufLen); 
  • return s.Trim();  } 
  • //读整数  public int ReadInteger(string Section, string Ident, int Default) 
  • {  string intStr = ReadString(Section, Ident, Convert.ToString(Default)); 
  • try  { 
  • return Convert.ToInt32(intStr);  } 
  • catch (Exception ex)  { 
  • Console.WriteLine(ex.Message);  return Default; 
  • }  } 
  • //写整数  public void WriteInteger(string Section, string Ident, int Value) 
  • {  WriteString(Section, Ident, Value.ToString()); 
  • }  //读布尔 
  • public bool ReadBool(string Section, string Ident, bool Default)  { 
  • try  { 
  • return Convert.ToBoolean(ReadString(Section, Ident, Convert.ToString(Default)));  } 
  • catch (Exception ex)  { 
  • Console.WriteLine(ex.Message);  return Default; 
  • }  } 
  • //写Bool  public void WriteBool(string Section, string Ident, bool Value)