Вставьте текстовый файл в файл данных, используя мою собственную таблицу/файл

Мне нужна помощь, я сделал экстрактор, используя свою собственную таблицу словарей (отлично работает), и теперь я делаю вставку.

этот код ниже вставляет текст .txt в .dat просто отлично, но все специальные символы, такие как ç ã õ, вставляются с? вместо. я просто не знаю, как заставить снова прочитать мой словарь, чтобы вставить.

вот мой код.

          internal class ScriptHandler
{


    public void Insert(string scriptFilePath, string fileDataPath, int offset)
    {

        string script = File.ReadAllText(scriptFilePath, Encoding.ASCII);

        using (BinaryWriter writer = new BinaryWriter(File.Open(fileDataPath, FileMode.Open, FileAccess.ReadWrite)))
        {

            writer.BaseStream.Position = offset;

            for (int i = 0; i < script.Length; i++)
            {

                char _char = script[i];

                if (_char == '\n' || _char == '\r')
                    continue;
                
                byte _byte = _revCharDict[_char + ""];

                writer.Write(_byte);

            }
        }
    }

   
    private Dictionary<byte, string> _charDict = new Dictionary<byte, string>()
    {

        [0x00] = "_",
        [0x01] = "{",
        [0x05] = "{",
        [0x09] = "{",
        [0x0A] = "{",
        [0x0B] = "{",
        [0x0C] = "{",
        [0x0D] = "{",
        [0x10] = "{",
        [0x11] = "{",
        [0x12] = "{",

      private Dictionary<string, byte> _revCharDict = new Dictionary<string, byte>()
    {


        ["_"] = 0x00,
        [" "] = 0x20,
        ["!"] = 0x21,
        ["'"] = 0x22,
        ["%"] = 0x25,
        ["&"] = 0x26,
        ["'"] = 0x27,
        ["("] = 0x28,
        [")"] = 0x29,
--------------------------------------------------------------------------------

ценю помощь.

с уважением.

0 ответов

Другие вопросы по тегам