string inputt - это та переменная, которая будет содержать ответ запроса с сервера (у тебя вроде string html)
а в лейблы распихивать переменные result_clan, result_exp и result_money
к примеру
label.Text = result_clan;
________________
[Ссылки могут видеть только зарегистрированные пользователи. ]
[Ссылки могут видеть только зарегистрированные пользователи. ]
string inputt - это та переменная, которая будет содержать ответ запроса с сервера (у тебя вроде string html)
а в лейблы распихивать переменные result_clan, result_exp и result_money
к примеру
label.Text = result_clan;
у меня тогда пусто получается, но я уже сделал так:
Заметь, что если ты юзаеш массив строк, то не всегда ответ может находится на той же 11 строке и так далее, поэтому я уже не раз предлагал остальным, делать поиск строки:
Код:
string obrabotka = ОТВЕТсСЕРВЕРА.
string[] stringSeparators = new string[] { "\n" };
string[] result = obrabotka.Split(stringSeparators, StringSplitOptions.RemoveEmptyEntries);
foreach (string FindStroke in result)
{
if (FindStroke.IndexOf("money") != -1)
{
string[] MassivStroki = FindStroke.Split((Convert.ToChar(">"))); //Разделяем строку символом ">"
label1.Text = MassivStroki[1].Replace("</money", ""); //[0] Будет возращать всё что идёт до первого ">", [1] Вернёт всё что после первого ">", так же удаляем то что осталось на конце.
}
}
PROFIT.
Добавлено через 4 минуты
Чтобы открывалась ссылка, поставь linkLabel1 эвент "Click" код:
1. поиск строки как-то до меня не доходит, а вот в массиве вроде разобрался...
2. С русскими буквами как - то не понял, какой еще де-кодер?
Что обозначает FindStroke и stroka, не знаю на что их заменить из моего кода...
3. За linkLabel1 спасибо.
4. Как можно сделать, чтобы при 3-х значениях label13 выполнялись разные действия, как сделать на 2 знаю, у меня вот такой код:
Мне нужно сделать так:
1. Если label13.Text != textBox3.Text - тогда идет выполнение запросов на сервер.
2. Если label13.Text = "" - Стоп
3. Если label13.Text = textBox3.Text - Стоп
Код на стоп: timer1.Stop(); - Знаю.
Как сделать на 3 варианта не понимаю...
Можно пример...
P.S. CaptainAmerica, чтобы я делал без тебя... оказываешь большую помощь... спасибо тебе...
Добавлено через 2 часа 38 минут
Нужно найти XP с такого ответа:
Как это можно сделать через поиск стороки чтобы не менять каждый раз...
код на ответ стоит вот такой:
Код:
// Получаем ответ
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
// Получаем html-код страницы
Regex rex = new Regex(@"[^0-9]{1,}");
string html = new StreamReader(response.GetResponseStream(), Encoding.UTF8).ReadToEnd();
string[] mass = rex.Split(html);
string result = mass[2]; // именно этот элемент массива будет содержать твое число
label1.Text = mass[2];
Что и куда нужно дописать, если делать через поиск строки?
________________
[Ссылки могут видеть только зарегистрированные пользователи. ] - сообщество серверов MineCraft.
RPG, Survival, Hi-Tech сервера. 24\7. Без лагов.
Последний раз редактировалось XRASER; 29.03.2011 в 16:58.
Причина: Добавлено сообщение
Относительно поиска в строках как предложил Nickitee:
его код отлично работает:
Код:
string[] stringSeparators = new string[] { "\n" };
string[] result = inputt.Split(stringSeparators, StringSplitOptions.RemoveEmptyEntries);
foreach (string FindStroke in result)
{
if (FindStroke.IndexOf("money") != -1)
{
string[] MassivStroki = FindStroke.Split((Convert.ToChar(">"))); //Разделяем строку символом ">"
Console.WriteLine(MassivStroki[1].Replace("</money", ""));
label1.Text = MassivStroki[1].Replace("</money", ""); //[0] Будет возращать всё что идёт до первого ">", [1] Вернёт всё что после первого ">", так же удаляем то что осталось на конце.
}
}
просто вставляй в свою программу и все.
Это для извлечения необходимых данных из строки ответа:
Код:
string html = new StreamReader(response.GetResponseStream(), Encoding.UTF8).ReadToEnd();
string[] mass = inputt.Split('"');
string result_clan="", result_exp="", result_money="";
for (int i = 0; i < mass.Length; i++) //так как мы разбивали текст по символу " то
{ //и искать то что нам нужно будем в
if (mass[i] == "name") // "промежутках" т.е. name : имя_клана
result_clan = mass[i + 2];
if(mass[i]=="exp")
result_exp = mass[i + 2];
if (mass[i] == "money")
result_money = mass[i + 2];
}
label1.Text = result_clan;//распихиваем по лейблам
label2.Text = result_exp;
label3.Text = result_money;
Здесь в цикле перебирается массив, полученный разбиением строки ответа по символу "
при проходе по элементам массива смотрим - нашли элемент name, если рассмотреть входящую строку то увидим что при разбиении следующим элементом массива (i+1) будет символ : после него будет название клана, следовательно нам нужен элемент (i+2).Таким образом создавая условия с требуемым обозначением (hp, exp и т.д.) элемент i+2 всегда будет содержать необходимую тебе информацию.Конечно это грубовато, но работает, по крайней мере если элемент name будет соответствовать клану и не будет повторяться в строке (на этот случай можно сохранять значение только 1й раз)
В ручную тут ничего менять не нужно каждый раз.
________________
[Ссылки могут видеть только зарегистрированные пользователи. ]
[Ссылки могут видеть только зарегистрированные пользователи. ]
Последний раз редактировалось CaptainAmerica; 29.03.2011 в 23:30.
Не, сорь, но это не то, что мне нужно.
Мне нужно, чтобы ВЕСЬ html ответ отобразился на форме в лейбле и ни на что не делился
Моя попытка написать labbel.Show(html); накрылась, вот пишу о помощи)
Это абсолютно не относится к тюряге и прочих игр, мне желателен простой ответ на простой вопрос
________________
Драконы воруют детей
Последний раз редактировалось S.e.n.s.o.R; 29.03.2011 в 23:34.
Не, сорь, но это не то, что мне нужно.
Мне нужно, чтобы ВЕСЬ html ответ отобразился на форме в лейбле
Моя попытка написать labbel.Show(html); накрылась, вот пишу о помощи)
Это абсолютно не относится к тюряге и прочих игр, мне желателен простой ответ на простой вопрос
да это я и не тебе писал.
с чего ты решил что нужно использовать labbel.Show() это ведь метод для отображения самого лейбла. а просто label1.Text=html; не пробовал ?
________________
[Ссылки могут видеть только зарегистрированные пользователи. ]
[Ссылки могут видеть только зарегистрированные пользователи. ]
да это я и не тебе писал.
с чего ты решил что нужно использовать labbel.Show() это ведь метод для отображения самого лейбла. а просто label1.Text=html; не пробовал ?
А можно лучше так, чтобы этот ответ показывался в веббраузере?
________________
Драконы воруют детей
Последний раз редактировалось S.e.n.s.o.R; 29.03.2011 в 23:46.
Причина: Добавлено сообщение