Classes commonly used to read and write INI files

Source: Internet
Author: User
Tags delete key ini integer
Using System;
Using System.IO;
Using System.Runtime.InteropServices;
Using System.Text;
Using Microsoft.Win32;

Namespace Wjb.readorwriteiniandreg
{
<summary>
Summary description of the Rwini.
Read and write INI file class
Class Library Development: Wu Jianbing
Time: October 20, 2003
Function: Read and write INI file
</summary>
public class Rwini
{
private static string FileName;

[DllImport ("kernel32")]
private static extern int Getprivateprofileint (
String Lpappname,
String Lpkeyname,
int Ndefault,
String lpFileName
);
[DllImport ("kernel32")]
private static extern int GetPrivateProfileString (
String Lpappname,
String Lpkeyname,
String Lpdefault,
StringBuilder lpreturnedstring,
int nsize,
String lpFileName
);
[DllImport ("kernel32")]
private static extern bool WritePrivateProfileString (
String Lpappname,
String Lpkeyname,
String lpstring,
String lpFileName
);

<summary>
Constructs a class that reads and writes an INI file with a full path filename
</summary>
<param name= "filename" ></param>
Public Rwini (string filename)
{
//
Constructors
//
Filename=filename;
}
<summary>
Reading integer data
</summary>
<param name= "section" ></param>
<param name= "Key" ></param>
<param name= "def" ></param>
<returns></returns>
public int GetInt (string section,string key,int def)
{
Return Getprivateprofileint (Section,key,def,filename);
}
<summary>
Reading string data
</summary>
<param name= "section" ></param>
<param name= "Key" ></param>
<param name= "def" ></param>
<returns></returns>
public string GetString (string section,string key,string def)
{
StringBuilder temp=new StringBuilder (1024);
GetPrivateProfileString (Section,key,def,temp,1024,filename);
Return temp. ToString ();
}
<summary>
Write integer data
</summary>
<param name= "section" ></param>
<param name= "Key" ></param>
<param name= "Ival" ></param>
public void Writeint (string section,string key,int ival)
{
WritePrivateProfileString (Section,key,ival.tostring (), FileName);
}
<summary>
Writing string data
</summary>
<param name= "section" ></param>
<param name= "Key" ></param>
<param name= "Strval" ></param>
public void WriteString (string section,string key,string strval)
{
WritePrivateProfileString (Section,key,strval,filename);
}
<summary>
Delete key values
</summary>
<param name= "section" ></param>
<param name= "Key" ></param>
public void Delkey (String section,string key)
{
WritePrivateProfileString (Section,key,null,filename);
}
<summary>
Delete Module
</summary>
<param name= "section" ></param>
public void Delsection (string section)
{
WritePrivateProfileString (Section,null,null,filename);
}
}
}




Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.