从msdn中删除了一些代码后,我发现它不能像我想要的那样正常工作。我正在尝试使用谷歌翻译,以及在飞行中为我翻译一些东西。问题是responseFromServer没有包含翻译文本,当我使用浏览器查看时,源代码也不是,尽管在查看页面本身时,chien很自豪地显示出来。使用WebRequest检索数据
void getTranslation()
{
WebRequest request = WebRequest.Create("http://translate.google.com/translate_t?hl=en#en|fr|dog");
// Get the response.
WebResponse response = request.GetResponse();
// Display the status.
Console.WriteLine(((HttpWebResponse)response).StatusDescription);
// Get the stream containing content returned by the server.
Stream dataStream = response.GetResponseStream();
// Open the stream using a StreamReader for easy access.
StreamReader reader = new StreamReader(dataStream);
// Read the content.
string responseFromServer = reader.ReadToEnd();
int index = 0;
while (responseFromServer.Substring(index).Contains("dog"))
{
index = responseFromServer.IndexOf("dog", index + 1);
Console.WriteLine(responseFromServer.Substring(index < 50 ? 0 : index - 50, 100));
Console.WriteLine(" ");
}
}
有没有人知道我在这里无法理解?还是一个网站,返回一个简单的翻译请求?
@帕特里克:您是否设法使您的需求发挥作用,或者您是否最终选择了其他方法? – 2009-05-18 08:26:26
我曾将此作为学习练习,但最终没有时间跟随。我有让法国同事翻译我需要手工翻译的选择。 – Patrick 2009-06-10 13:28:55