Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.89/9: Рейтинг темы: голосов - 9, средняя оценка - 4.89
0 / 0 / 2
Регистрация: 06.10.2017
Сообщений: 86

Как сделать заполнение таблицы из txt в datagridview

23.11.2017, 23:50. Показов 1981. Ответов 15
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Как можно сделать так, чтобы из файла где все записано через пробел, чтобы автоматически заполнилась по нажатию кнопки в datagridview
Название файла zak.txt
Формат записи в файле:
Номер_заказа Фамилия Дата_заказа Номер_телефона
Нужно сделать так, чтобы оставался один столбик справа, где на выбор можно поставить "В обработке", "Выполнено", "Отказ".
А как сделать на сохранение уже сам сделаю
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
23.11.2017, 23:50
Ответы с готовыми решениями:

Заполнение datagridview данными из txt таблицы
Здравствуйте. Имеется datagridview, которая заполняется из txt таблицы. private void dataOpenbutton1_Click(object sender, EventArgs e) ...

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

DataGridView в Цикле FOR как сделать заполнение?
Здравствуйте добрые люди. Всю голову сломал, не могу понять как мне заполнить DataGridView из цикла.... в цикле получаю данные из SQL и...

15
2 / 2 / 4
Регистрация: 20.01.2016
Сообщений: 48
24.11.2017, 11:33
Номер_заказа Фамилия Дата_заказа Номер_телефона Состояние_заказа
вы записывать будете каждый заказ с новой строки?

Добавлено через 1 минуту
если да, то построчно считывайте и сразу добавляйте в грид. У вас грид задан в форме? или вы программного хотите грид сделать?

Добавлено через 54 секунды
если вы уже задали грид в форме то просто заполняйте полученную информацию по ячейкам
0
0 / 0 / 2
Регистрация: 06.10.2017
Сообщений: 86
24.11.2017, 14:09  [ТС]
oOlDeMoNlOo, форму я сделал, там только Состояние_заказа не сделано в файле. Хотелось бы чтобы автоматом присваивалось "В обработке", и это сделать во всплывающем списке. А на выходе, когда сохраню перезаписывалось все содержимое файла, так проще будет)
0
2 / 2 / 4
Регистрация: 20.01.2016
Сообщений: 48
24.11.2017, 14:26
проще будет если состояние стоять изначально будет.
допустим 0 - в обработке, 1 - выполнено, 2 - отказ
0
0 / 0 / 2
Регистрация: 06.10.2017
Сообщений: 86
24.11.2017, 14:27  [ТС]
oOlDeMoNlOo, если не сложно можно код?
0
2 / 2 / 4
Регистрация: 20.01.2016
Сообщений: 48
24.11.2017, 14:29
можно конечно попробовать сплитить через пробелы, и если значений меньше 5 то тогда автоматом добавлять в обработке, при условии что каждый заказ с новой строки либо разделен чем то еще

Добавлено через 39 секунд
вам код записи в датагрид обязателен?
0
0 / 0 / 2
Регистрация: 06.10.2017
Сообщений: 86
24.11.2017, 14:30  [ТС]
oOlDeMoNlOo, если не сложно то да. В своих исходниках из других программ порылся, у меня нет, только если считывание через split, но там данные однотипные, а тут и int, и string есть
0
2 / 2 / 4
Регистрация: 20.01.2016
Сообщений: 48
24.11.2017, 14:33
Хорошо я сейчас сделаю
0
2 / 2 / 4
Регистрация: 20.01.2016
Сообщений: 48
24.11.2017, 15:00
Вот получение информации с файла
Вложения
Тип файла: rar WindowsFormsApplication4.rar (67.2 Кб, 23 просмотров)
0
2 / 2 / 4
Регистрация: 20.01.2016
Сообщений: 48
24.11.2017, 15:00
посмотрите и скажите, то?
0
0 / 0 / 2
Регистрация: 06.10.2017
Сообщений: 86
24.11.2017, 15:06  [ТС]
oOlDeMoNlOo, да, вполне. Спасибо) дальше уже постараюсь разобраться
0
0 / 0 / 2
Регистрация: 06.10.2017
Сообщений: 86
27.11.2017, 00:22  [ТС]
oOlDeMoNlOo, у меня почти все работает с вашим кодом, только к сожалению он игнорит где 5 элементов в строке, я заменил "В обработке" на "Нет", чтобы пробел между словами не посчитал за другое, и обновил как на сохранение, все ок записывается, вот код на сохранение, может я что не так сделал?
Файл записывается без проблем в нужном формате
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
        private void button2_Click(object sender, EventArgs e)
        {
            FileStream fs = new FileStream("zak.txt", FileMode.Create);
 
                    StreamWriter myWritet = new StreamWriter(fs);
                    try
                    {
 
                        for (int i = 0; i < dataGridView1.RowCount - 1; i++) //-1 обязательно, иначе попытается считать пустую строку
                        {
                            for (int j = 0; j < dataGridView1.ColumnCount; j++)
                            {
                                myWritet.Write(dataGridView1.Rows[i].Cells[j].Value.ToString() + " ");
                            }
                            myWritet.WriteLine();
                        }
                        MessageBox.Show("Обновлено успешно. Приятной работы! :)");
                    }
                    catch
                    {
                        MessageBox.Show("Ошибка");
                    }
                    finally
                    {
                        myWritet.Close();
                    }
 
                    fs.Close();
                }
Добавлено через 41 минуту
oOlDeMoNlOo, извиняюсь, нашел косяк. Из-за лишнего пробела игнорило

Добавлено через 12 минут
oOlDeMoNlOo, а без пробела оно все сливается( я уже даже не знаю что делать. Записывает нормально, а считывает неправильно( последнее игнорирует если есть 5 элемент для массива
0
3566 / 2507 / 1174
Регистрация: 14.08.2016
Сообщений: 8,219
27.11.2017, 00:45
если информация в файл попадает только из этой софтины, то использовать сериализацию, таких проблем не будет
0
0 / 0 / 2
Регистрация: 06.10.2017
Сообщений: 86
27.11.2017, 00:57  [ТС]
Diamante, в софтине реализовано так, что когда заполняю целиком инфу, некоторые поля прописываются в файл, и этот файл привязан уже к той форме, с которой уже идет работа. Изначально записывается 4 элемента массива, что и логично и "Нет" присваивается автоматом. А если выбрать другой элемент и нажать кнопку, оно запишет корректно, но из-за того, что после 5 элемента есть пробел этот элемент игнорируется при считывании. Не вручную же каждый раз лезть в файл и удалять в каждой строке пробел перед переходом на новую строку
0
2 / 2 / 4
Регистрация: 20.01.2016
Сообщений: 48
27.11.2017, 17:56
killerofsoul, смени пробел на какой то разделяющий знак, допустим ';' и ты сможешь спокойно записывать и читать с пробелами
0
0 / 0 / 2
Регистрация: 06.10.2017
Сообщений: 86
27.11.2017, 18:36  [ТС]
oOlDeMoNlOo, к сожалению не помогает. Руками приходится удалять пробел что прописывается после разделителя. Запись из датагрида идет вот так:
C#
1
2
3
4
5
6
7
for (int i = 0; i < dataGridView1.RowCount - 1; i++) //-1 обязательно, иначе попытается считать пустую строку
                        {
                            for (int j = 0; j < dataGridView1.ColumnCount; j++)
                            {
                                myWritet.Write(dataGridView1.Rows[i].Cells[j].Value.ToString()+" ");
                            }
                            myWritet.WriteLine();
Может тут можно впилить что-то, чтобы в конце строки стирала пробел иначе это будет не очень
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
27.11.2017, 18:36
Помогаю со студенческими работами здесь

Заполнение Datagridview с txt файла
Есть файл рекорды: qwe 100 asd 20 Нужно с этого файла считать информацию и вывести в datagridview. В датегрид 2 колонки, первая...

Заполнение DataGridView из файла txt
Здравствуйте, у меня возникла проблема с заполнением данных из txt файла в dataGridView1. Сам файл DatesOut6.txt представлен ниже. У...

Заполнение DataGridView из txt файла
Добрый вечер! Очень нуждаюсь в помощи, помогите пожалуйста заполнить таблицу DataGridView2, файл, чем заполнить прилагается. Понимаю, что...

Как сделать заполнение textbox из строки txt файла, организовав поиск
База ведется в txt, по номеру клиента нужно чтобы находил и заполнял textbox фамилией, именем, отчеством и номером телефона.

Заполнение DataGridView из файла txt (ошибка)
Здравствуйте, у меня тут появилась проблема при заполнении DataGridView из файла txt. Файл представлен ниже. Вот код который я написал ...


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

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
Новые блоги и статьи
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США. Нашел на реддите интересную статью под названием «Кто-нибудь знает, где получить бесплатный компьютер или. . .
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-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru