如何为Twitter更新编码变音符号?

4

我有自己的Twitter API,收到了一些邮件反映在尝试发布带有重音符号和其他变音符号的状态更新时出现了问题。我想对它们进行编码,以便状态更新仍然包含它们。

我知道有方法可以去除变音符号,但我想保留它们。

我阅读了Twitter计数字符页面,并注意到他们确实谈到了编码变音符号。我想在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);

我尝试使用FormCFormKCFormKD,但是要么出现401-未经授权错误,要么出现一个或多个参数中的Unicode值无效错误。
有什么想法吗?
1个回答

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();

你使用OAuth吗?因为我正在使用OAuth,所以我不会将字节数据写入流。 - Ryan Alford

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接