ini 文件的读写操作

angelior 2003-04-02 11:36:42
我要创建一个INI文件用于保存连接SQL数据库的参数信息,用到的格式如下:
[Path]
ServerName=I\_!;
DatabaseName=aebxm
UserName=m
Password=;;;

要求对文件能读写
...全文
96 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
qieyj 2003-04-10
  • 打赏
  • 举报
回复
http://www.csdn.net/Develop/Read_Article.asp?Id=17764
qieyj 2003-04-10
  • 打赏
  • 举报
回复
http://www.csdn.net/Develop/Read_Article.asp?Id=15360
The_Gathering 2003-04-10
  • 打赏
  • 举报
回复
用XML,方便,灵活.ini可以不要了
angelior 2003-04-10
  • 打赏
  • 举报
回复
我的要求是不要用到kernel32,是纯C#代码!
yongjin25 2003-04-08
  • 打赏
  • 举报
回复
把一下代码编译成dll,在程序中调用

using System;
using System.Runtime.InteropServices;
using System.Text;

namespace Ini
{
/// <summary>
/// Create a New INI file to store or load data
/// </summary>
public class IniFile
{
public string path;

[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>
/// INIFile Constructor.
/// </summary>
/// <PARAM name="INIPath"></PARAM>
public IniFile(string INIPath)
{
path = INIPath;
}
/// <summary>
/// Write Data to the INI File
/// </summary>
/// <PARAM name="Section"></PARAM>
/// Section name
/// <PARAM name="Key"></PARAM>
/// Key Name
/// <PARAM name="Value"></PARAM>
/// Value Name
public void IniWriteValue(string Section,string Key,string Value)
{
WritePrivateProfileString(Section,Key,Value,this.path);
}

/// <summary>
/// Read Data Value From the Ini File
/// </summary>
/// <PARAM name="Section"></PARAM>
/// <PARAM name="Key"></PARAM>
/// <PARAM name="Path"></PARAM>
/// <returns></returns>
public string IniReadValue(string Section,string Key)
{
StringBuilder temp = new StringBuilder(255);
int i = GetPrivateProfileString(Section,Key,"",temp,
255, this.path);
return temp.ToString();

}
}
}
timmy3310 2003-04-08
  • 打赏
  • 举报
回复
请参考:

http://www.csdn.net/develop/Read_Article.asp?Id=17764
crocus 2003-04-08
  • 打赏
  • 举报
回复
string Filename=this.MapPath(this.TemplateSourceDirectory)+"\\config\\RegisterAgent.ini";
FileStream fs =new FileStream(Filename,FileMode.Open,FileAccess.Read);
StreamReader sr = new StreamReader(fs);
while(sr.Peek()>-1)
{
this.ListBoxRegAgent.Items.Add(sr.ReadLine());
}
angelior 2003-04-08
  • 打赏
  • 举报
回复
Sorry !
I'am disagree to use the kernel32,becauce it based of windows!
yarshray 2003-04-02
  • 打赏
  • 举报
回复
现在一般用XML

.NET中没有封装该操作所以你必须使用API

[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);


详细参考:

http://www.codeproject.com/csharp/cs_ini.asp
saucer 2003-04-02
  • 打赏
  • 举报
回复
An INI file handling class using C#
http://www.codeproject.com/csharp/cs_ini.asp

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧