2010-02-22 60 views
4

我有我自己的Twitter API,並且在嘗試發佈帶有重音符號和其他變音符的狀態更新時,我收到了一些關於問題的電子郵件。我想編碼這些以便狀態更新仍然有它們。如何爲Twitter更新編碼變音符號?

我知道有辦法去除變音符號,但我想保留它。

我讀了Twitter Counting Characters頁面,發現他們確實在談論編碼變音符號。我想在C#中做到這一點。我只是不知道該怎麼做。

這裏是爲Twitter的API http://code.google.com/p/twitter-api/issues/detail?id=433

我已經嘗試使用原來的錯誤報告..

string oldStatus = "con eñe"; 
string newStatus = oldStatus.Normalize(NormalizationForm.FormD); 

我使用FormC試過,FormKC,並FormKD,我要麼得到的401 - Unauthorized錯誤或Invalid Unicode value in one or more parameters錯誤。

任何想法?

回答

1

這有幫助嗎?我測試了這個應用程序,它在您的文章中使用變音符號(並且長度爲140個字符)成功發佈了我的更新。

HttpWebRequest request = CreateRequest("https://twitter.com/statuses/update.xml", "POST", 
username, password); 
string str = HttpUtility.UrlEncode(status); 
byte[] buffer = new UTF8Encoding(false, false).GetBytes("status=" + str); 
using (Stream stream = request.GetRequestStream()) 
{ 
    stream.Write(buffer, 0, buffer.Length); 
} 
request.GetResponse().Close(); 
+0

您使用OAuth嗎?由於我使用的是OAuth,因此我不會將字節數據寫入流中。 – 2010-03-05 13:11:19