Форум программистов, компьютерный форум, киберфорум
C++/CLI Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.53/34: Рейтинг темы: голосов - 34, средняя оценка - 4.53
5 / 5 / 0
Регистрация: 24.01.2017
Сообщений: 233

Вывод в DataGridView из .txt файла

24.01.2017, 20:58. Показов 6784. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте,
пересмотрел много сообщений по этой теме...этого нигде нет. Прошу помощи в этом или по этому вопросу (именно по этому, т.к. много ссылок на эту тему на форумах, а приходишь по ссылкам там одно не то или уже известное ).
Поясняю:
-есть DataGridView на форме (два столбца X Y) и текстовый файл на диске(там цифры double в 2 колонки). Код читает строку целиком, а как запиcать в Grid?
например,
C++
1
2
3
4
//....
dataGridView1->Rows[0]->Cells[0]->Value = 
dataGridView1->Rows[1]->Cells[1]->Value = 
//......
в TextBox можно выводить но это не то...
C++
1
2
3
4
5
6
7
8
9
10
11
if (openFileDialog1->ShowDialog() == System::Windows::Forms::DialogResult::OK)
    {       System::IO::StreamReader ^ sr = gcnew
            System::IO::StreamReader(openFileDialog1->FileName);
                        for........{
                                richTextBox3->Text += sr->ReadLine();
                    richTextBox3->Text += "\n";
                                  .....}
             }
 
    sr->Close();
    }
только не надо ссылок все перелопачены уже...
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
24.01.2017, 20:58
Ответы с готовыми решениями:

Вывод информации из .txt в DataGridView
Добрый день может кто сможет подсказать. Читаю из файла информацию и вывожу это все в datagridview. StreamReader myRead = new...

Загрузка Txt файла в DataGridView
Здарова народ помогите пожалуйста, нужно считать прикреплённый файл в DataGridVeiw, проблема для меня заключаться в том что с 5 по 103...

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

8
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18242 / 14156 / 5366
Регистрация: 17.03.2014
Сообщений: 28,846
Записей в блоге: 1
25.01.2017, 02:46
Лучший ответ Сообщение было отмечено Rukov как решение

Решение

Rukov,
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
System::IO::StreamReader sr("data.txt");
array<wchar_t>^ splitBy = { ' ' };
array<Double>^ numbers = gcnew array<Double, 1>(2);
for (;;) {
    String^ line = sr.ReadLine();
    if (line == nullptr) break;
    if (line->Length > 0) {
        array<String^>^ parts = line->Split(splitBy, StringSplitOptions::RemoveEmptyEntries);
        int rowIndex = dataGridView1->Rows->Add();
        dataGridView1->Rows[rowIndex]->Cells[0]->Value = double::Parse(parts[0]);
        dataGridView1->Rows[rowIndex]->Cells[1]->Value = double::Parse(parts[1]);
    }
}
1
5 / 5 / 0
Регистрация: 24.01.2017
Сообщений: 233
25.01.2017, 12:34  [ТС]
...нет в С++ не идет... вот что собирал
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
    if (openFileDialog1->ShowDialog() == System::Windows::Forms::DialogResult::OK)
    {
            System::IO::StreamReader ^ sr = gcnew
            System::IO::StreamReader(openFileDialog1->FileName);
 
            array<wchar_t>^ splitBy = { ' ' };
            array<Double>^ numbers = gcnew array<Double, 1>(2);
            for (;;) {
                String^ line = sr->ReadLine();
                if (line == nullptr) break;
                if (line->Length > 0) {
                    array<String^>^ parts = line->Split(splitBy, StringSplitOptions::RemoveEmptyEntries);
                    int rowIndex = dataGridView1->Rows->Add();
                    dataGridView1->Rows[rowIndex]->Cells[0]->Value = double::Parse(parts[0]);
                    dataGridView1->Rows[rowIndex]->Cells[1]->Value = double::Parse(parts[1]);
                    }
             }
    
    sr->Close();
}
Миниатюры
Вывод в DataGridView из .txt файла   Вывод в DataGridView из .txt файла  
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18242 / 14156 / 5366
Регистрация: 17.03.2014
Сообщений: 28,846
Записей в блоге: 1
25.01.2017, 12:50
Лучший ответ Сообщение было отмечено Rukov как решение

Решение

Rukov, здесь перепутались два типа массивов std::array и cli::array. Способы решения могут быть разные: a) убрать #include <array>, если тебе не нужен std::array б) убрать using namespace std; если он есть есть и подключать отдельные типы как вроде рекомендуется в) добавить префикс cli к объявлениям управляемых массиов. Я приведу пример для варианта "в".
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
    if (openFileDialog1->ShowDialog() == System::Windows::Forms::DialogResult::OK)
    {
            System::IO::StreamReader ^ sr = gcnew System::IO::StreamReader(openFileDialog1->FileName);
 
            cli::array<wchar_t>^ splitBy = { ' ' };
            cli::array<Double>^ numbers = gcnew cli::array<Double, 1>(2);
            for (;;) {
                String^ line = sr->ReadLine();
                if (line == nullptr) break;
                if (line->Length > 0) {
                    cli::array<String^>^ parts = line->Split(splitBy, StringSplitOptions::RemoveEmptyEntries);
                    int rowIndex = dataGridView1->Rows->Add();
                    dataGridView1->Rows[rowIndex]->Cells[0]->Value = double::Parse(parts[0]);
                    dataGridView1->Rows[rowIndex]->Cells[1]->Value = double::Parse(parts[1]);
                    }
             }
    
    sr->Close();
}
1
5 / 5 / 0
Регистрация: 24.01.2017
Сообщений: 233
25.01.2017, 14:24  [ТС]
...то что доктор прописал
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18242 / 14156 / 5366
Регистрация: 17.03.2014
Сообщений: 28,846
Записей в блоге: 1
25.01.2017, 14:27
Rukov, массив numbers, кстати, можно убрать. Он остался от моих экспериментов с добавлением строк в DGV.
0
5 / 5 / 0
Регистрация: 24.01.2017
Сообщений: 233
25.01.2017, 14:35  [ТС]
-------
> вот это еще поясните пожалуйста: cli::array<Double, 1>(2)?

-двумерный массив cli понятно, а цифра 1 что означает?
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18242 / 14156 / 5366
Регистрация: 17.03.2014
Сообщений: 28,846
Записей в блоге: 1
25.01.2017, 14:36
Rukov, 1 - размерность массива, 2 - количество элементов. То есть мы создаем одномерный массив с двумя элементами.
0
5 / 5 / 0
Регистрация: 24.01.2017
Сообщений: 233
25.01.2017, 14:48  [ТС]
понятно.
...да, и без строки /* cli::array<Double>^ numbers = gcnew cli::array<Double, 1>(2); */ работает...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
25.01.2017, 14:48
Помогаю со студенческими работами здесь

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

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

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

Вывод данных для отчета из DataGridView в txt файл
есть на диске C:\Report\osn.txt с уже набитой структурой файла. необходимо из DataGridView определенные ячейки поставить в определенную...

Построчный ввод из текстбокса в txt и дальнейший вывод в DataGridView
Ребят, вообщем делаю телефонный справочник(дизайнер форм). Есть пару проблем: при использовании...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
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 - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru