【问题标题】:C# - Reading Russian text from a .txt fileC# - 从 .txt 文件中读取俄语文本
【发布时间】:2011-08-10 21:29:26
【问题描述】:

我在尝试从 .txt 文件中读取俄语字符时遇到问题。当我阅读它时,文本总是会损坏。文件编码为UTF8。

代码如下:

  TextReader reader = new StreamReader(deliveryLocation, Encoding.UTF8);
  translatedContent = reader.ReadToEnd();
  reader.Close();

谁能告诉我我做错了什么?我已尝试使用所有支持的编码,但文本总是损坏?

这是我需要从文件中读取的文本示例:

От таблиц выше мы см。 чонсервной банкы тень и WinRunner брать3p приблизительно такое же время настраивать и запускать цикл испытания в будут немного NEOBXODIMO снимков экрана。 Где более большой количество снимков экрана NEOBXODIMO, время бранное для того чтобы запускать тень чем время бранное для писания Кодего и для того чтобы выполнять оно в 赢跑者。 Примечания инженера в его отчете что WinRunner требовать3s сборка средства программирования под испытанием специально, котор нужно подготовить работать с им, тогда как тень не делает。 Каждый ресурс включено страница должен иметь имя ШИЛА (ШИЛО будет языком стержня клиента собственническим)。

【问题讨论】:

  • 您能否将数据样本发布到 pastebin.com 并给我们一个链接?
  • 文件编码可能是UTF-8,但它的所有字符都是有效的UTF-8吗?我已经看到各种编码的文件被“转换”了,只需在 UTF-8 BOM 上打一下就可以了。唉,事情没那么简单。
  • 但是嵌入了一些俄语字符,对吧?
  • 不管怎样,我要睡觉了,检查cp1251和koi8_r以及utf-16
  • 这可能是一个很好的线索。 :stackoverflow.com/questions/7821118/…

标签: c#-4.0 encoding utf-8 character-encoding internationalization


【解决方案1】:

使用

TextReader reader = new StreamReader(deliveryLocation, Encoding.Defaut);
  translatedContent = reader.ReadToEnd();
  reader.Close();

【讨论】:

    【解决方案2】:

    你好,试试下面的阅读俄语字符。

    TextReader reader = new StreamReader(deliveryLocation, Encoding.GetEncoding("Windows-1252");
    translatedContent = reader.ReadToEnd();
    reader.Close();
    

    并尝试在 Notepad++ 中打开输出数据,编码格式为 Cyrillic-1251。

    问候, 香布

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-10-09
      • 2015-04-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-10-29
      • 1970-01-01
      相关资源
      最近更新 更多