Работа с переводом translate.google (по ссылке) - C#
Формулировка задачи:
Ну чтож, у меня проблема возникла: Переводчик переводит лишь первое предложение во всей строке. Для преодоления этого, я сделал некий код:
Но в ходе выполнения кода, переводчик ругается на со словами мол:
Так что я сделал не так? Вроде, нет предложений, короче 2х символов...
string result1 = "Two merry geese lived with granny! One gray, the other white! Geese at Grandma!";
string url;
string result = "";
string[] temp = result1.Split('!');
string[] temp2 = temp;
WebClient webClient1;
if (temp.Length > 0)
{
foreach (string s in temp)
{
if (s.Trim() != "")
{
if (_5 > 0)
temp[_5] = s.Trim().Substring(1, s.Trim().Length);
url = String.Format("http://www.google.com/translate_t?hl=en&ie=UTF8&text={0}&langpair={1}", temp[_5], "en|ru");
webClient1 = new WebClient();
result = webClient1.DownloadString(url);
result = result.Substring(result.IndexOf("<span title=\"") + "<span title=\"".Length);
result = result.Substring(result.IndexOf(">") + 1);
result = result.Substring(0, result.IndexOf("</span>"));
result = WebUtility.HtmlDecode(result.Trim());
temp[_5] = result;
result1 = result1.Replace(s.Trim(), temp2[_5]);
}
_5++;
}
}temp[_5] = s.Trim().Substring(1, s.Trim().Length);
Необработанное исключение типа "System.ArgumentOutOfRangeException" в mscorlib.dll Дополнительные сведения: Индекс и длина должны указывать на позицию в строке.
Решение задачи: «Работа с переводом translate.google (по ссылке)»
textual
Листинг программы
temp[_5] = s.Trim().Substring(1, s.Trim().Length-1);