С Новым годом! Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
33 / 33 / 18
Регистрация: 16.09.2015
Сообщений: 246

Считывание отдельных строк с с файла на сервере

30.11.2015, 15:34. Показов 1079. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте. У меня есть код, с помощью которого проверяется наличие обновлений на сервере вот он:
Кликните здесь для просмотра всего текста
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
public class VersionChecker
{
    public bool NewVersionExists(string localVersion, string versionFromServer)
    {
        Version verLocal = new Version(localVersion);
        Version verWeb = new Version(versionFromServer);
        return verLocal != verWeb;
    }
}
 
private void ChUpd()
{
    if (Start_Realism2015.Properties.Settings.Default.SkipUpd == true)
    {
        string ServerVersion = "http://realism2015.ru/realism2015v2/version.txt";
        string localVersion = File.ReadAllText("v.txt");
        HttpWebRequest request = (HttpWebRequest)WebRequest.Create(ServerVersion);
        // Ответ сервера
        HttpWebResponse response = (HttpWebResponse)request.GetResponse();
        // Используем чтение потока данных
        using (StreamReader reader = new StreamReader(response.GetResponseStream()))
        {
            // Пытаемся получить версию сервера, приобразуя в Int32 из строки
            ServerVersion = reader.ReadToEnd();
            if (verChecker.NewVersionExists(localVersion, ServerVersion))
            {
                r15_updater();
                Application.Exit();
 
            }
            else hidethisform();
        }
    }
    else hidethisform();
}

Он читает данные из текстового файла на сервере и на компе клиента, сравнивает числа в них и из этого делает вывод. Теперь мне нужно сделать так чтобы он сравнивал числа построчно. Тоесть в файлах на сервере и на клиенте сейчас 1 строчка которую он сравнивает, а я хочу добавить вторую, так чтобы это считать как версию отдельного модуля программы. С файлом версии клиента (v.txt) проблем нету. Не получается с файлом на сервере. Я уверен что ответ на поверхности, сделать переменную ServerVersion массивом и считывать в него построчно (ServerVersion[1], ServerVersion[2] итд.). Что то не получается. Помогите, пожалуйста.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
30.11.2015, 15:34
Ответы с готовыми решениями:

Потоки, считывание строк из файла.
Добрый день. Вот озадачился такой задачей, никак не могу подобрать нужной выражение в C# для считывания строк из файла. Проблема...

Ускорить считывание большого количества строк (~2500000) из файла
в общем есть файл, в нем около 2500000 строк (в каждой строке есть всего 2 объекта), я пытаюсь сделать список смежности по нему, делаю так ...

Считывание строк из файла в формате .txt и подсветка гласных и согласных букв в разных цветах
Здравствуйте уважаемые форумчане. Помоги пожалуйста новичку, написать консольную программу для считывания строк из файла в формате .txt и...

2
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18245 / 14169 / 5366
Регистрация: 17.03.2014
Сообщений: 28,848
Записей в блоге: 1
30.11.2015, 16:56
aurisdies, в рамках твоего кода это можно сделать так:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
using (StreamReader reader = new StreamReader(response.GetResponseStream()))
{
    string clientVersion = reader.ReadLine();
    if (verChecker.NewVersionExists(localVersion, clientVersion))
    {
        // Нужно обновлять главное приложение ...
    }
    
    string module1Version = reader.ReadLine();
    if (verChecker.NewVersionExists(localVersion, clientVersion))
    {
        // Нужно обновлять модуль 1 ...
    }
    
    // и т.д.
}
Цитата Сообщение от aurisdies Посмотреть сообщение
C#
1
2
3
// Пытаемся получить версию сервера, приобразуя в Int32 из строки
ServerVersion = reader.ReadToEnd();
if (verChecker.NewVersionExists(localVersion, ServerVersion))
Это неверный комментарий. Никакого преобразования в int здесь не делается. Подобные неправильные комментарии только мешают. Удали его.
0
33 / 33 / 18
Регистрация: 16.09.2015
Сообщений: 246
30.11.2015, 18:06  [ТС]
Готово. Огромное спасибо.. чёт я затупил.
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
 public class VersionChecker
        {
            public bool NewVersionExists(string localVersion, string versionFromServer)
            {
                Version verLocal = new Version(localVersion);
                Version verWeb = new Version(versionFromServer);
                return verLocal < verWeb;
            }
        }
 
        private void button1_Click(object sender, EventArgs e)
        {
            string ServerV = "http://realism2015.ru/realism2015v2/beta_version.txt";
            HttpWebRequest request = (HttpWebRequest)WebRequest.Create(ServerV);
            // Ответ сервера
            HttpWebResponse response = (HttpWebResponse)request.GetResponse();
            // Используем чтение потока данных
            using (StreamReader reader = new StreamReader(response.GetResponseStream()))
            {
                StreamReader fs = new StreamReader("v.txt");
                string updaterSVersion = reader.ReadLine();
                string updaterVersion = fs.ReadLine();
                if (verChecker.NewVersionExists(updaterVersion, updaterSVersion))
                {
                    MessageBox.Show("Версия апдэйтера:" + updaterVersion +
                                    "\nВерсия на сервере: " + updaterSVersion
                    );
                }
                string launcherSVersion = reader.ReadLine();
                string launcherVersion = fs.ReadLine();
                if (verChecker.NewVersionExists(launcherVersion, launcherSVersion))
                {
                    MessageBox.Show("Версия лаунчера:" + launcherVersion +
                                    "\nВерсия на сервере: " + launcherSVersion
                    );
    
                }
               }
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
30.11.2015, 18:06
Помогаю со студенческими работами здесь

Считывание отдельных строк в Fortran 77
Доброго времени суток. Возникла задача написать на фортране небольшую программу, хоть я и ни разу не программист. Ну, приходится учиться....

Считывание данных из файла на сервере
Проблема заключается в том что на сервере лежит текстовый файл, там в каждой строчке версия 1100,1200 и тд. Так же в корне с программой...

Считывание информации из файла, находящегося на сервере.
Мне надо апплетом считать информацию из файла, находящегося на сервере.

Запись в файл отдельных строк и чтение строки с определённым номером из файла
Друзья, нужна помощь в написании программы, которая позволяет записывать в файл отдельные строки, вводимые пользователем и читать строку с...

Считывание строк из файла
Во общем есть текстовый файл, из которого надо взять строку и просто ее напечатать #define _CRT_SECURE_NO_WARNINGS #include...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути
Programma_Boinc 01.01.2026
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути Сочетание глобально распределённой вычислительной мощности и инновационных. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru