基本上我想传递一个包含西班牙文本的字符串,该字符串可以是几种编码之一(Latin-1,CP-1252或UTF-8等等)。一旦它到达XMLRPC我就可以检测到编码,但在此之前我不会知道它。默认情况下,C#似乎会杀死ASCII之外的任何字符。我通过base64编码字符串解决了这个问题,但我真的很想不这样做。

我正在使用CookComputing.XmlRpc ...这是我界面的代码片段:

public interface ISpanishAnalyzer
{
    [XmlRpcMethod("analyzeSpanishString")]
    int analyzeSpanishString(string text);
}

任何帮助将不胜感激。谢谢!

有帮助吗?

解决方案

我认为没有比base64编码更好的方法。只要您不知道编码,就没有其他可能将其作为字节数组处理。我建议的唯一变化是通过使用byte []参数而不是字符串并让XmlRpc库来处理base64编码(假设它支持这个)来使其显式化。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top