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

Как считать данные из файла?

13.07.2017, 11:49. Показов 5065. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте!
Для дальнейшего выполнения программы необходимо знать имя файла. пробовал получить его с помощью openFileDialog, но пока безуспешно.
В форме 2 кнопки: 1ой выбираем нужный нам файл, 2ой выводим в textbox-ы проведенные рассчеты.
C++
1
2
3
4
5
6
    private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) {
    openFileDialog1->Filter = "Text files (.txt)| *.txt|All files (*.*)|*.*"; 
    if (openFileDialog1->ShowDialog() == System::Windows::Forms::DialogResult::OK)
    {
        textBox1->Text = openFileDialog1->FileName;     
    }
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
private: System::Void button2_Click(System::Object^  sender, System::EventArgs^  e) {
    vector<int> arr;
    int N = 0;
    ifstream file;
    file.open("input.txt"); //вот тут нужно собственно имя файла
    int temp;
    while (!file.eof())
    {
        file >> temp;
        arr.push_back(temp);
    }
...
}
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
13.07.2017, 11:49
Ответы с готовыми решениями:

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

Как считать данные из файла?
Здраствуйте) Помогите, пожалуйста, справится с такой задачей. Есть файл с таким содержанием A 0.32 B 0.2 C 0.13 Каким...

Как считать данные из файла в ListBox?
Как считать данные из файла в ListBox Пишу так(но не чего не получается): Dim fnumber As Integer Dim fname As String Dim fn As...

6
 Аватар для RunningMan
278 / 186 / 75
Регистрация: 12.04.2017
Сообщений: 1,088
Записей в блоге: 2
13.07.2017, 12:20
Лучший ответ Сообщение было отмечено BoyxXx как решение

Решение

Преобразование между типами System::String, char*, wchar_t*, std::string и др.

Напишите функцию для конвертации System::String в std::string
потом
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
    String^ filePath = String::Empty;
 
    private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) 
    {
        openFileDialog1->Filter = "Text files (.txt)| *.txt|All files (*.*)|*.*";
        if (openFileDialog1->ShowDialog() == System::Windows::Forms::DialogResult::OK)
        {
            filePath = openFileDialog1->FileName;
            textBox1->Text = filePath;
        }
    }
    private: System::Void button2_Click(System::Object^  sender, System::EventArgs^  e)
    {
        vector<int> arr;
        int N = 0;
        ifstream file;
        file.open(MyConvertSystemStringToStdString(filePath)); //вот тут нужно собственно имя файла
        int temp;
        while (!file.eof())
        {
            file >> temp;
            arr.push_back(temp);
        }
    }
1
0 / 0 / 0
Регистрация: 13.07.2017
Сообщений: 4
13.07.2017, 12:30  [ТС]
Цитата Сообщение от RunningMan Посмотреть сообщение
(MyConvertSystemStringToStdString(filePa th))
- идентификатор "MyConvertSystemStringToStdString" не определен
0
 Аватар для RunningMan
278 / 186 / 75
Регистрация: 12.04.2017
Сообщений: 1,088
Записей в блоге: 2
13.07.2017, 12:40
BoyxXx, вам осталось функцию MyConvertSystemStringToStdString написать.
0
0 / 0 / 0
Регистрация: 13.07.2017
Сообщений: 4
13.07.2017, 13:15  [ТС]
RunningMan, Если не затруднит, то как она должна выглядеть??
Перечитал материал по преобразованию System::String в std::string, но пока не разобрался
0
 Аватар для RunningMan
278 / 186 / 75
Регистрация: 12.04.2017
Сообщений: 1,088
Записей в блоге: 2
13.07.2017, 13:57
Лучший ответ Сообщение было отмечено BoyxXx как решение

Решение

по моему так, не проверял:


System::String^ -> std::string
C++
1
2
3
4
    std::string SystemStringToStdString(System::String^ str)
    {
        return msclr::interop::marshal_as<std::string>(str);
    }

обратно
C++
1
2
3
4
    System::String^ StdStringToSystemString(const std::string & str)
    {
        return  msclr::interop::marshal_as<System::String^>(str);
    }


заголовочные файлы:
C++
1
2
3
#include <msclr/marshal.h>
#include <msclr\marshal_cppstd.h>
#include <string>
1
0 / 0 / 0
Регистрация: 13.07.2017
Сообщений: 4
13.07.2017, 14:11  [ТС]
RunningMan, спасибо большое! Все работает.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
13.07.2017, 14:11
Помогаю со студенческими работами здесь

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

Как считать данные из файла в массив
Собственно , есть файл .txt в нем записаны числа, мне нужно считать данные из файла в массив, потом отсортировать массив(это я знаю как),...

Как считать в массив данные из файла?
Программа по созданию файла и записи в него случайного количество чисел.Проблема состоит в том,что в массив нужно считать данные из...

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

Как считать данные из файла в массив?
Ребят, спасайте


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru