FLResourceLibrary/FLCore/ResourcersChanger.cs
Dvurechensky 6e2bfe062d 1.0.1
2025-05-13 15:25:37 +03:00

74 lines
1.7 KiB
C#

/*
* Author: Nikolay Dvurechensky
* Site: https://www.dvurechensky.pro/
* Gmail: dvurechenskysoft@gmail.com
* Last Updated: 13 мая 2025 15:25:18
* Version: 1.0.1
*/
using System.Collections;
using System.Collections.Generic;
using System.Resources;
using System.IO;
using System;
using System.Reflection;
using System.Linq;
namespace Core
{
public class Resourcers
{
ResXResourceWriter _Writer = null;
ResXResourceReader _Reader = null;
Dictionary<string, string> _Values = null;
public Resourcers(string fileName)
{
_Reader = new ResXResourceReader(fileName);
_Writer = new ResXResourceWriter(fileName);
_Values = new Dictionary<string, string>();
if (File.Exists(fileName))
this.LoadResources();
}
private void LoadResources()
{
foreach (DictionaryEntry entry in _Reader)
_Values.Add(entry.Key.ToString(), entry.Value.ToString());
}
public void AddResource(string key, string value)
{
if (_Values.ContainsKey(key))
{
_Values[key] = value;
}
else
_Values.Add(key, value);
}
public void RemoveAllResources()
{
_Writer.Generate();
_Writer.Close();
_Reader.Close();
Console.WriteLine($"[Clear] Count: {_Values.Count}");
}
public void Generate()
{
foreach (string key in _Values.Keys)
_Writer.AddResource(key, _Values[key]);
_Writer.Generate();
_Writer.Close();
_Reader.Close();
}
}
}