Как программно вставить строку со специальными символами в RTF? У меня есть шаблон rtf Я загружаю строку и затем заменяю все данные $MY_VARIABLE$
. Данные содержат специальные символы, такие как «ęśęść», и проблема в том, что в файле результата эти символы заменяются на «?». Что-то не так с кодировкой, но что?Вставить строку со специальными символами в RTF
Мой код выглядит следующим образом:
StreamReader reader = new StreamReader("template.rtf");
StringBuilder form = new StringBuilder(reader.ReadToEnd());
// here I replace variables in rtf with data
Encoding srcEncoding = new UTF8Encoding();
Encoding dstEncoding = new ASCIIEncoding();
byte[] utf = srcEncoding.GetBytes(form.ToString());
byte[] asci = Encoding.Convert(Encoding.UTF8, Encoding.ASCII, utf);
return dstEncoding.GetString(asci);
Я прочитал этот вопрос. Это относится к конвертации в другую сторону. – jlp
Я не хочу конвертировать RTF в обычный текст. Я хочу загрузить RTF-файл, заменить что-то и сохранить изменения. Проблема в том, что текст, который я хочу вставить, это UTF8 (я полагаю), а RTF - ASCI. Поэтому в какой-то момент мне нужно изменить кодировку. Я не знаю, когда и как. – jlp