На нашем сайте мы используем cookie для сбора информации технического характера и обрабатываем IP-адрес вашего местоположения. Продолжая использовать этот сайт, вы даете согласие на использование файлов cookies. Здесь вы можете узнать, как мы пользуемся файлами cookies.
Я согласен
логотип upread.ru

Имя файла в openFileDialog в C++


В C++ довольно много разных типов данных. И заставить их взаимодействовать между собой (конвертироваться друг в друга) иногда совсем даже непросто. Более того, распространенные задачи, которые решаются в других языках одной строкой, в это могут занимать несколько. Примером такой задачи является получение и работа с адресом файла через стандартный диалог окна выбора файла.



Итак, добавляем на нашу форму элемент типа openFileDialog. Теперь открываем окно выбора файла:

openFileDialog1->ShowDialog();
Получаем путь к файлу в типе System::String^:

System::String^ path_f = openFileDialog1->FileName;
Инициализируем вспомогательную переменную типа std::string:

std::string vsSt= "";
Циклом через char её определяем:

for(int i = 0; i < path_f ->Length; i++)
vsSt += (char) path_f [i];
И, наконец, получаем переменную типа const char *:

const char * stt = vsSt.c_str();
Зачем такие сложности? Дело в том, что теперь, в таком формате имени файла, мы можем открыть его и записать что-то него, к примеру:

	FILE *file;
	if ((file=fopen(stt,"w"))==NULL) {
		printf("Невозможно открыть файл\n");
		exit(1);
	};
else {
fprintf(file,"%f\n",  “бе-бе-бе”);
}
Стоит отметить, что данный пример – это не исключение. Не хочу сказать ничего плохого, но в том же C# все происходит гораздо проще. Однако, для некоторых графических программ, которые студенты должны выполнить в рамках рубежного контроля, есть условие использовать именно язык C++. Так что приходится работать в этом направлении – в будущем я планирую еще написать несколько заметок на данную тему.

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


Автор этого материала - я - Пахолков Юрий. Я оказываю услуги по написанию программ на языках Java, C++, C# (а также консультирую по ним) и созданию сайтов. Работаю с сайтами на CMS OpenCart, WordPress, ModX и самописными. Кроме этого, работаю напрямую с JavaScript, PHP, CSS, HTML - то есть могу доработать ваш сайт или помочь с веб-программированием. Пишите сюда.



тегизаметки, си плюс плюс, openFileDialog, типы данных





Отправляя сообщение я подтверждаю, что ознакомлен и согласен с политикой конфиденциальности данного сайта.




C++: построчное чтение из файла с проверкой его существования
При первой загрузке не работает слайдер jCarouselLite


© upread.ru 2013-2020
При перепечатке активная ссылка на сайт обязательна.
Задать вопрос
письмо
Здравствуйте! Вы можете задать мне любой вопрос. Если не получается отправить сообщение через эту форму, то пишите на почу up777up@yandex.ru
Отправляя сообщение я подтверждаю, что ознакомлен и согласен с политикой конфиденциальности данного сайта.