2008-09-24 49 views
1

基本上我想傳遞一個字符串,其中包含西班牙語文本,可以使用幾種編碼之一(拉丁文-1,CP-1252或UTF-8)一些)。一旦它到達XMLRPC,我可以檢測到編碼,但在此之前我不會知道它。 C#默認情況下似乎在殺死ASCII以外的任何字符。我通過base64編碼字符串解決了這個問題,但我真的很喜歡不這樣做。將未知編碼的擴展ascii字符轉換爲C#Twisted XMLRPC

我使用CookComputing.XmlRpc ......這是我的界面的代碼片段:

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

任何幫助,將不勝感激。謝謝!

回答

2

我不認爲真的有更好的方法,然後base64編碼。只要你不知道編碼,你就沒有其他的可能性來把它作爲一個字節數組來處理。我建議的唯一更改是通過使用byte []參數而不是字符串來讓此顯式化,並讓XmlRpc庫負責base64編碼(假設它支持這一點)。