using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Runtime.InteropServices;
using System.IO;

namespace WriteIni
{
 /// <summary>
 /// ErrorRecord 的摘要说明。
 /// </summary>
 public class ErrorRecord
 {
  [DllImport("kernel32")]
  private static extern long WritePrivateProfileString(string section, string key,
   string val, string filePath);

  /*参数说明:section:INI文件中的段落;key:INI文件中的关键字;
     val:INI文件中关键字的数值;filePath:INI文件的完整的路径和名称。*/
  [DllImport("kernel32")]
  private static extern int GetPrivateProfileString(string section, string key,
   string def, StringBuilder retVal,
   int size, string filePath);

  public string FileName = @"C:\\test.ini";

  public ErrorRecord()
  {
   //
   // TODO: 在此处添加构造函数逻辑
   //
  }
  /// <summary>
  /// 功能描述: 写ini
  /// 作者:  杨艳峰
  /// 创建日期: 2004-8-01
  /// </summary>
  /// <param name="SectionName">段落名称</param>
  /// <param name="Key">键名称</param>
  /// <param name="Value">键值</param>
  /// <param name="FileName">文件路径</param>
  /// <returns></returns>
  private bool WriteIni(string SectionName,string Key,string Value,string FileName)
  {
   try
   {
    /*对INI文件进行写操作的时候,如果此时在INI文件中存在和
      要写入的信息相同的段落名称和关键字,则将覆盖此INI信息。*/
    WritePrivateProfileString(SectionName, Key, Value, FileName);
    return true;
   }
   catch
   {
    return false;
   }
   
  }
  /// <summary>
  /// 功能描述: 读ini键值
  /// 作者:  杨艳峰
  /// 创建日期: 2004-8-01
  /// </summary>
  /// <param name="SectionName">段落名称</param>
  /// <param name="Key">键名称</param>
  /// <param name="FileName">文件路径</param>
  /// <returns></returns>
  private object ReadIni(string SectionName,string Key,string FileName)
  {
   /*正确读取INI的必须满足三个前提:INI文件的全路径、段落名称和关键字名称。
    否则就无法正确读取。你可以设定读取不成功后的缺省数值,
    在下面的程序中,为了直观设定的是“无法读取对应数值!”字符串。*/
   StringBuilder Value = new StringBuilder(255);
   int i = GetPrivateProfileString(SectionName, Key, "无法读取对应数值!",
    Value, 255, FileName);
   int jj = Value.Length;
   return Value;
  }
 }
 }
 

posted on 2007-08-01 10:45  Yang-S  阅读(208)  评论(0)    收藏  举报