【问题标题】:c# read hebrew from text filec# 从文本文件中读取希伯来语
【发布时间】:2015-09-22 18:31:43
【问题描述】:

我用希伯来语写了一个文本文件。当我在 C# 中显示文件的内容时,我看不到我写的内容 - 我知道它与 Unicode 相关,但我并不真正理解它。有人帮忙吗?

string mymail = File.ReadAllText(@"C:\mail\mail.txt");

        MessageBox.Show(mymail);

这是结果:

���� ����� ��� ������������ ������� ���� �� ������

【问题讨论】:

  • 你是如何创建mail.txt的?从记事本?确保它使用 Unicode 编码而不是 ANSI 保存。
  • 非常感谢!它的工作

标签: c# unicode hebrew unicode-string


【解决方案1】:
  1. 关闭您的文件并重新打开它,确保您输入的内容确实保留在您的文件中。在 Windows 中使用默认记事本应用程序通常会默认为 ASCII,因此字符将无法正确保存在磁盘上,因此也无法正确检索。
  2. 您缺少编码,它可能默认为 ASCII。

    string mymail = File.ReadAllText(@"C:\mail\mail.txt", System.Text.Encoding.UTF8); MessageBox.Show(mymail);

【讨论】:

    【解决方案2】:
    string mymail = File.ReadAllText(@"C:\mail\mail.txt", System.Text.Encoding.GetEncoding("windows-1255")); 
    MessageBox.Show(mymail);
    

    【讨论】:

    • 为什么 OP 应该“试试这个”?解释您的建议/答案通常被认为是一种很好的形式。仅代码的答案可能会令人惊讶地缺乏信息,即使它们在技术上是正确的。 好的答案将始终解释所做的工作以及这样做的原因,不仅适用于 OP,而且适用于可能会发现此问题并正在阅读您的答案的 SO 的未来访问者。
    猜你喜欢
    • 1970-01-01
    • 2011-08-21
    • 2017-07-24
    • 1970-01-01
    • 2010-11-06
    • 2011-09-02
    • 2018-12-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多