|
- using System;
- using System.Collections.Generic;
- using System.IO;
- using System.Linq;
- using System.Runtime.InteropServices;
- using System.Text;
- using System.Threading.Tasks;
-
- namespace BeDesignerSCADA.Helper
- {
- /// <summary>
- /// 文件帮助类
- /// </summary>
- public class IniFile
- {
- #region ini
- [DllImport("kernel32")]
- internal static extern long WritePrivateProfileString(string section,
- string key, string val, string filePath);
- [DllImport("kernel32")]
- internal static extern int GetPrivateProfileString(string section,
- string key, string def, StringBuilder retVal,
- int size, string filePath);
- [DllImport("kernel32.dll")]
- private static extern int GetPrivateProfileSection(string lpAppName, byte[] lpszReturnBuffer, int nSize, string lpFileName);
-
- static string configFile = null;
- public static string ConfigFileName
- {
- get
- {
- if (string.IsNullOrEmpty(configFile))
- {
- string configFolder = System.IO.Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments), "VisualCodeEditor");
- if (!Directory.Exists(configFolder))
- Directory.CreateDirectory(configFolder);
- configFile = System.IO.Path.Combine(configFolder, ".config");
- }
- return configFile;
- }
- }
- public static void WriteValue(string Section, string Key, string Value)
- {
- WritePrivateProfileString(Section, Key, Value, ConfigFileName);
- }
-
- public static string ReadValue(string Section, string Key)
- {
- StringBuilder temp = new StringBuilder(255);
- int i = GetPrivateProfileString(Section, Key, "", temp,
- 255, ConfigFileName);
- if (i <= 0)
- return null;
- String Value = temp.ToString();
- return Value;
-
- }
- #endregion ini
- }
- }
|