public static bool WritePrivateProfileSection( string appName, string value, string fileName) { using (var inifile = new MLangInifile(fileName)) { return(inifile.WritePrivateProfileSection(appName, value)); } }
public static int GetPrivateProfileSection( string appName, StringBuilder builder, int nSize, string fileName) { using (var inifile = new MLangInifile(fileName)) { return(inifile.GetPrivateProfileSection(appName, builder, nSize)); } }
// ----------------------------------------------------- // static methods // ----------------------------------------------------- public static int GetPrivateProfileInt( string appName, string keyName, int nDefault, string fileName) { using (var inifile = new MLangInifile(fileName)) { return(inifile.GetPrivateProfileInt(appName, keyName, nDefault)); } }
public static int GetPrivateProfileString( string appName, string keyName, string defaultValue, StringBuilder builder, int nSize, string fileName) { using (var inifile = new MLangInifile(fileName)) { return(inifile.GetPrivateProfileString(appName, keyName, defaultValue, builder, nSize)); } }
/// <summary> /// メモ帳が保存するファイルのデフォルトが UTF8N になったので /// 保存可能なファイル形式に対応したクラスを作りました。 /// ファイル形式を判定し、BOM付きUTF16に変換してから IniFile 関連の API を実行します。 /// </summary> static void Main(string[] args) { var rootDir = Path.GetDirectoryName(Assembly.GetEntryAssembly().Location); var iniFilesOut = Path.Combine(rootDir, "Create"); if (Directory.Exists(iniFilesOut)) { Directory.Delete(iniFilesOut, true); } foreach (CharacterSet character in Enum.GetValues(typeof(CharacterSet))) { var target = Path.Combine(iniFilesOut, character.ToString() + ".ini"); using (var ini = new MLangInifile(target, character)) { ini.WritePrivateProfileString("CharacterSet", "LANG", character.ToString()); ini.WritePrivateProfileString("日本語", "日本語", "日本語"); } Process.Start("notepad", target); } Console.Write(@"何かキーを押してください。"); Console.ReadKey(); var iniFilesDir = Path.Combine(rootDir, "IniFiles"); var iniFiles = Directory.GetFiles(iniFilesDir); Array.Sort(iniFiles); Console.Write(@"=============================================="); Console.Write(@"スタティックメソッドテスト"); Console.Write(@"=============================================="); foreach (string fileName in iniFiles) { StaticTest(fileName); } Console.Write(@"何かキーを押してください。"); Console.ReadKey(); Console.WriteLine(@"=============================================="); Console.WriteLine(@"インスタンスメンバテスト"); Console.WriteLine(@"=============================================="); foreach (string fileName in iniFiles) { InstanceTest(fileName); } Console.Write(@"何かキーを押してください。"); Console.ReadKey(); }
static void InstanceTest(string fileName) { Console.WriteLine(@"----------------------------------------------"); Console.WriteLine(Path.GetFileName(fileName)); Console.WriteLine(@"----------------------------------------------"); using (var inifile = new MLangInifile(fileName)) { var builder = new StringBuilder(1024); inifile.GetPrivateProfileString("Encoding", "Lang", string.Empty, builder, builder.Capacity); int count = inifile.GetPrivateProfileInt("Write", "Count", 0); Console.WriteLine("Encodings={0} Lang={1} count={2}", inifile.CharacterSet, builder, count); count++; inifile.WritePrivateProfileString("Write", "Count", count.ToString()); string buffer = string.Format("WritePrivateProfileSectionのテスト{0}", count); inifile.WritePrivateProfileSection("Section", buffer); inifile.GetPrivateProfileSection("Section", builder, builder.Capacity); Console.WriteLine(builder.ToString()); } }
static void StaticTest(string fileName) { Console.WriteLine(@"----------------------------------------------"); Console.WriteLine(Path.GetFileName(fileName)); Console.WriteLine(@"----------------------------------------------"); var builder = new StringBuilder(1024); MLangInifile.GetPrivateProfileString("Encoding", "Lang", string.Empty, builder, builder.Capacity, fileName); int count = MLangInifile.GetPrivateProfileInt("Write", "Count", 0, fileName); Console.WriteLine("Lang={0} count={1}", builder, count); count++; MLangInifile.WritePrivateProfileString("Write", "Count", count.ToString(), fileName); string buffer = string.Format("WritePrivateProfileSectionのテスト{0}", count); MLangInifile.WritePrivateProfileSection("Section", buffer, fileName); MLangInifile.GetPrivateProfileSection("Section", builder, builder.Capacity, fileName); Console.WriteLine(builder.ToString()); }