MyToolkit函式庫加入Ini檔案讀寫功能
1: using System;
2: using System.Collections.Generic;
3: using System.Linq;
4: using System.Text;
5: 6: using System.Runtime.InteropServices;
7: namespace MyToolkit
8: { 9: 10: public class IniFileTool
11: {12: public string path;
13: [DllImport("kernel32")]
14: private static extern long WritePrivateProfileString(string section,
15: string key, string val, string filePath);
16: [DllImport("kernel32")]
17: private static extern int GetPrivateProfileString(string section,
18: string key, string def, StringBuilder retVal,
19: int size, string filePath);
20: /// <summary>
21: /// INIFile Constructor.
22: /// </summary>
23: /// <PARAM name="INIPath"></PARAM>
24: public IniFileTool(string INIPath)
25: { 26: path = INIPath; 27: }28: /// <summary>
29: /// Write Data to the INI File
30: /// </summary>
31: /// <PARAM name="Section"></PARAM>
32: /// Section name
33: /// <PARAM name="Key"></PARAM>
34: /// Key Name
35: /// <PARAM name="Value"></PARAM>
36: /// Value Name
37: public void IniWriteValue(string Section, string Key, string Value)
38: {39: WritePrivateProfileString(Section, Key, Value, this.path);
40: } 41: 42: /// <summary>
43: /// Read Data Value From the Ini File
44: /// </summary>
45: /// <PARAM name="Section"></PARAM>
46: /// <PARAM name="Key"></PARAM>
47: /// <PARAM name="Path"></PARAM>
48: /// <returns></returns>
49: public string IniReadValue(string Section, string Key)
50: {51: StringBuilder temp = new StringBuilder(255);
52: int i = GetPrivateProfileString(Section, Key, "", temp,
53: 255, this.path);
54: return temp.ToString();
55: 56: } 57: } 58: }-------------------------------------------------------------------------------------------------------------------------------------
撰寫一個Windows Form測試剛才的Ini函式庫
加入MyToolkit.dll
寫入
1: private void button1_Click(object sender, EventArgs e)
2: {3: DateTimeTool dt = new DateTimeTool();
4: dt.tic();// 計時開始
5: string sAppDir = Application.StartupPath;
6: string sFilename = textBox1.Text;
7: string sFilepath = sAppDir + "\\" + sFilename;
8: IniFileTool ini = new IniFileTool(sFilepath); 9: string section = textBox2.Text; 10: string key = textBox3.Text; 11: string value = textBox4.Text; 12: ini.IniWriteValue(section, key, value); 13: int day, hour, min, sec, msec; 14: dt.toc(out day, out hour, out min, out sec, out msec); // 計時結束 15: this.Text = string.Format("{0}時{1}時{2}分{3}秒{4}毫秒", day, hour, min, sec, msec); 16: }讀取
1: private void button2_Click(object sender, EventArgs e)
2: {3: DateTimeTool dt = new DateTimeTool();
4: dt.tic(); // 計時開始
5: string sAppDir = Application.StartupPath;
6: string sFilename = textBox1.Text;
7: string sFilepath = sAppDir + "\\" + sFilename;
8: IniFileTool ini = new IniFileTool(sFilepath); 9: string section = textBox2.Text; 10: string key = textBox3.Text; 11: string value; 12: value = ini.IniReadValue(section, key); 13: this.Text = value; 14: int day, hour, min, sec, msec; 15: dt.toc(out day, out hour, out min, out sec, out msec); // 計時結束 16: MessageBox.Show( string.Format("{0}時{1}時{2}分{3}秒{4}毫秒", day, hour, min, sec, msec) );}參考資料:
全站熱搜






留言列表
