【发布时间】:2017-07-27 19:37:55
【问题描述】:
如何解码包含 XML 文档的 base64 编码字符串,该文档包含拉丁字母 (á,é,í,ó,ú)?
我知道这个问题How do I encode and decode a base64 string? 但是提供的解决方案不适用于带有重音符号的字母。
到目前为止我已经尝试过:
xmlBase64 = System.Text.Encoding.ASCII.GetString(System.Convert.FromBase64String(XmlDoc));
xmlBase64 = System.Text.Encoding.Unicode.GetString(System.Convert.FromBase64String(XmlDoc));
xmlBase64 = System.Text.Encoding.UTF8.GetString(System.Convert.FromBase64String(XmlDoc));
xmlBase64 = System.Text.Encoding.UTF32.GetString(System.Convert.FromBase64String(XmlDoc));
但在所有情况下,拉丁字母(西班牙字符)都替换为 ? 或类似字符。
编辑:
【问题讨论】:
-
编码过程中字母是否丢失?
-
UTF-8 应该足够好了。
-
用什么编码来编码数据?请注意 - 谷歌拉丁字母和其中的字母
-
@litelite,不,我已经检查了文件,字母在那里。
-
@Adam,我也这么认为,但由于某种原因不起作用。