none
(странный вопрос) Вывод данных из string RRS feed

  • Вопрос

  • Как вывести определенные данные из переменной которая содержит ответ от сервера принимающий POST запросы...

     System.Collections.Specialized.NameValueCollection reqparm = new System.Collections.Specialized.NameValueCollection();
                reqparm.Add("code", textCode);
                byte[] responsebytes = client.UploadValues("http://site.ru/post.php", "POST", reqparm);
                string responsebody = Encoding.UTF8.GetString(responsebytes);

    На выходе мне выводит все в одну строку...

    Пример:

    echo Имя пользователя<br>(Логин)<br>email;

    Вместо <br> заменяю \r\n - что бы выводить каждое значение с новой строки...

    Но вот в чем проблема... Не знаю как полученные данные вывести, в разных местах...

    30 января 2015 г. 11:35

Ответы

  • Добрый день.

    О сколько нам открытий чудных, готовит просвещенья дух...

    Может вы, все таки, прочитаете хотя-бы одну книгу по основам C#? Ну серьезно, а?

    Для работы со строками в C# есть куча методов. Например, вы можете воспользоваться методом IndexOf, чтобы найти расположение нужной конструкции в строке (например между первым echo и первым <br> у вас находится Логин), потом можно воспользоваться методом Substring, который позволит по найденным позициям извлечь из строки нужные вам данные. Ну а чтобы строку было после нахождения очередного элемента проще анализировать, можно ее от уже разобранного чистить методом Remove.

    Ну и маленький примерчик разбиения строки на слова:

    string str = "aa bbb c dddd ee";
    List<string> words = new List<string>();
    while (str.Contains(" "))
    {
        string word = str.Substring(0, str.IndexOf(" "));
        str = str.Remove(0, str.IndexOf(" ") + 1);
        words.Add(word);
    }
    words.Add(str);
    foreach (var word in words)
    {
        Console.WriteLine(word);
    }

    Нет, у вас есть еще вариант разобраться с регулярными выражениями, но как говорили древние: "Если у вас есть проблема и вы ее планируете решить при помощи регулярных выражений, то теперь у вас две проблемы".
    30 января 2015 г. 12:21
    Отвечающий

Все ответы

  • Добрый день.

    О сколько нам открытий чудных, готовит просвещенья дух...

    Может вы, все таки, прочитаете хотя-бы одну книгу по основам C#? Ну серьезно, а?

    Для работы со строками в C# есть куча методов. Например, вы можете воспользоваться методом IndexOf, чтобы найти расположение нужной конструкции в строке (например между первым echo и первым <br> у вас находится Логин), потом можно воспользоваться методом Substring, который позволит по найденным позициям извлечь из строки нужные вам данные. Ну а чтобы строку было после нахождения очередного элемента проще анализировать, можно ее от уже разобранного чистить методом Remove.

    Ну и маленький примерчик разбиения строки на слова:

    string str = "aa bbb c dddd ee";
    List<string> words = new List<string>();
    while (str.Contains(" "))
    {
        string word = str.Substring(0, str.IndexOf(" "));
        str = str.Remove(0, str.IndexOf(" ") + 1);
        words.Add(word);
    }
    words.Add(str);
    foreach (var word in words)
    {
        Console.WriteLine(word);
    }

    Нет, у вас есть еще вариант разобраться с регулярными выражениями, но как говорили древние: "Если у вас есть проблема и вы ее планируете решить при помощи регулярных выражений, то теперь у вас две проблемы".
    30 января 2015 г. 12:21
    Отвечающий
  • Добрый день. А может взглянуть на проблему с базой, не так как у меня реализовано, а так как в этом вопросе...
    30 января 2015 г. 14:10