编码和解码多语言字符串c#

时间:2017-03-01 14:48:30

标签: c# .net encode multilingual

我想编码然后解码包含多语言字符的字符串,其中语言,长度和字符定位(如索引8-10中的中文字符)是未知的。

甚至可以拥有"通用"编码器?或者一些知道如何解码的算法?

在网页上搜索时,我们只提供了一些解决方案,这些解决方案包括了解特殊字符的位置,以及使用何种语言,我甚至无法了解语言本身。

有什么想法吗?

编辑: 示例:由多种语言组成的字符串,例如:

  

"您好{CHINESE}我的{LATIN}生锈了#34;

由英语,中文和拉丁语组成。

但是当我做的时候

var test = ASCIIEncoding.ASCII.GetBytes(someStr);

然后

ASCIIEncoding.ASCII.GetString(test)

"特殊字符" (IE,而不是英文字符)转换为问号

1 个答案:

答案 0 :(得分:3)

不要使用ASCII编码,因为它不应该在同一个字符串中处理多个语言字符。

使用Unicode代替:

var test = UnicodeEncoding.Unicode.GetBytes(someStr);
var test1 = UnicodeEncoding.Unicode.GetString(test);