-2

Пытаюсь вывести версию не получается, помогите! Код:

string str = String.Empty;
    private void vertest()
            {
                try
                {
                    string ts = "http://frostsecurity.net/frost/frostupdater/version.txt";
                    HttpWebRequest p = (HttpWebRequest)WebRequest.Create(ts);
                    Stream z = ((HttpWebResponse)p.GetResponse()).GetResponseStream();
                    new List<string>();
                    using (StreamReader v = new StreamReader(z, Encoding.UTF8))
                    {
                        while (v.Peek() >= 1)
                        {
                            string x = v.ReadLine();
                            if (x.Contains("pb_live"))
                            {
                                ver = str;
                                this.Frost.Text = x.Split(new char[] { '|' })[1];
                            }
                        }
                    }
                }
                catch { }
            }
    // Интересует сама строка:из pblive 3.0.0.27
TriX
  • 57
  • 1
    А что, по-вашему, делает строка new List<string>();? – VladD Jun 05 '16 at 21:11
  • Да я,тупо выдрал код из левого приложения, я сам толком мало что понимаю, учусь у знающих)... Подскажите что не так? – TriX Jun 05 '16 at 21:17
  • 3
    Да. Она ничего не делает. Вы бы книгу прочитали, а? – VladD Jun 05 '16 at 21:20
  • Непременно со временем).. а по поводу списка, можно ли это как нибудь решить? – TriX Jun 05 '16 at 21:23
  • Можно. Но вы ж хотите получить решение, а не научиться, правильно? – VladD Jun 05 '16 at 21:25
  • Для начало, я бы хотел получить решение! И в дальнейшем когда начну учить, принимать и то и сё (из книги и из примеров которые дают пользователи). – TriX Jun 05 '16 at 21:29
  • 1
    для началО, туда ли ты зашел, дружок? пример который ничего не делает, из левого приложения. что? – strangeqargo Jun 05 '16 at 21:35

1 Answers1

1

Вот вам немного LINQ:

var uri = new Uri("http://frostsecurity.net/frost/frostupdater/version.txt");
var request = WebRequest.CreateHttp(uri);
using (var responce = (HttpWebResponse)request.GetResponse())
using (var responceStream = responce.GetResponseStream())
using (var reader = new StreamReader(responceStream))
{
    var dict = 
        reader.ReadToEnd()
              .Split(new[] {'\n'}, StringSplitOptions.RemoveEmptyEntries)
              .Select(l => l.Split(new[] {' ', '\t'}, StringSplitOptions.RemoveEmptyEntries))
              .ToDictionary(a => a[0], a => a[1]);
    var result = dict["pb_live"];
}

Держите без LINQ, вот вам внутренняя часть.

    var dict = new Dictionary<string, string>();
    string line;
    while ((line = reader.ReadLine()) != null)
    {
        if (string.IsNullOrWhiteSpace(line))
            continue;
        var parts = line.Split(new[] {' ', '\t'}, StringSplitOptions.RemoveEmptyEntries);
        dict[parts[0]] = parts[1];
    }
    var result = dict["pb_live"];

И прочитайте книгу, разработка путём задавания вопросов на SO себя не оправдывает.

VladD
  • 206,799