【问题标题】:unicode to human readable string c# .netunicode 到人类可读的字符串 c# .net
【发布时间】:2015-05-12 19:38:45
【问题描述】:

这可能是一个非常基本的问题,但如果您能帮助我解决这个问题,我们将不胜感激:

我想将包含 \u000d\u000a\u000d\u000 等字符的字符串转换为人类可读的字符串,但是我不想使用 .Replace 方法,因为 Unicode 字符可能比我包含的软件要检查和替换。

string = "Test \u000d\u000a\u000d\u000aTesting with new line. \u000d\u000a\u000d\u000aone more new line"

我从我的服务器收到这个字符串作为 json 对象。

【问题讨论】:

  • 可以直接用显示吗?
  • 这里描述了一种可能性:[How do convert unicode escape sequences to unicode characters in a .NET string][1] [1]: stackoverflow.com/questions/183907/…
  • 感谢@uncoder 我刚刚使用了“Regex.Unescape(str)”,想知道这是否是一种安全且合理的方式。

标签: c# unicode-string


【解决方案1】:

你还需要那个吗?

例如,以下代码将打印出 abc,即实际解码后的值:

var unicodeString = "\u0061\u0062\u0063";
Console.WriteLine(unicodeString);

【讨论】:

  • 是的,不幸的是,软件中的 UI 元素显示所有 unicode 字符..
  • 嗯,"\u0033" 和"\\u0033" 之间是有区别的,第一个包含一个转义序列\u,它表示一个Unicode 字符。第二个只是以转义的反斜杠开头(这就是您在应用中看到的内容。)
猜你喜欢
  • 1970-01-01
  • 2012-09-20
  • 2016-12-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-07-16
  • 1970-01-01
相关资源
最近更新 更多