Форум программистов, компьютерный форум, киберфорум
C++/CLI Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.89/9: Рейтинг темы: голосов - 9, средняя оценка - 4.89
 Аватар для Bogradan
6 / 5 / 1
Регистрация: 22.03.2016
Сообщений: 335

Преобразовать из "System::String ^" в "char *"

10.05.2017, 00:01. Показов 1997. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Visual Studio 2010 C++.
Нужно путь к файлу "openFileDialog1->FileName" запихать в textBox1. Пишет ошибку: "невозможно преобразовать параметр 1 из "System::String ^" в "char *" - это x где strcpy. Как преобразовать в обычный char?

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) {
 if(openFileDialog1->ShowDialog() == System::Windows::Forms::DialogResult::OK)
 
     {
         System::IO::StreamReader ^ sr = gcnew
            System::IO::StreamReader(openFileDialog1->FileName);
         MessageBox::Show("Файл выбран",sr->ReadToEnd());
 
         char x, a;
 
         a=Convert::ToChar(textBox1->Text);
 
         
         strcpy( openFileDialog1->FileName, x);
         
         a=x;
 
         sr->Close();
      }
             }
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
10.05.2017, 00:01
Ответы с готовыми решениями:

Преобразовать "System::String ^" в "char []"
Доброго времени суток! Каким способом можно String^ переобразовать в char Вот у меня есть такой код: String^ s =...

Перевод System::String в char*
Попробовал перевести String в char таким способом: System::String ^host; host = textBox1->Text; CString...

Преобразование System::String^ в const char*
Здравствуйте! У меня такая проблема, я вызываю окно выбора файла, из которого буду выводить массив OpenFileDialog^ openFileDialog1 =...

5
Форумчанин
Эксперт CЭксперт С++
 Аватар для MrGluck
8216 / 5047 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
10.05.2017, 00:11
https://support.microsoft.com/... n-visual-c
0
Эксперт .NET
 Аватар для Даценд
5878 / 4755 / 2939
Регистрация: 20.04.2015
Сообщений: 8,361
10.05.2017, 00:19
Лучший ответ Сообщение было отмечено Bogradan как решение

Решение

Цитата Сообщение от Bogradan Посмотреть сообщение
Нужно путь к файлу "openFileDialog1->FileName" запихать в textBox1.
А зачем какие-то странные манипуляции с преобразованием строки в символ, если можно просто:
C++
1
textBox1->Text = openFileDialog1->FileName;
1
 Аватар для Bogradan
6 / 5 / 1
Регистрация: 22.03.2016
Сообщений: 335
10.05.2017, 08:58  [ТС]
Да, действительно.
Но теперь мне пишет: error C2440: =: невозможно преобразовать "wchar_t" в "char [50]"
Как это преобразовать?

C++
1
2
3
4
5
6
7
char x; char a[50]; //!!!!!! Я увеличил длину переменной "a", потому-что он жаловался на недостаток размера.
 
         a=Convert::ToChar(textBox1->Text);
 
         
         //strcpy( openFileDialog1->FileName, x);
         textBox1->Text = openFileDialog1->FileName;
0
Эксперт .NET
 Аватар для Даценд
5878 / 4755 / 2939
Регистрация: 20.04.2015
Сообщений: 8,361
10.05.2017, 10:36
Лучший ответ Сообщение было отмечено Bogradan как решение

Решение

Bogradan,
Если пишете в C++/CLI, то можно пользоваться классами .NET:
C++
1
System::String^ a = textBox1->Text;
1
 Аватар для Bogradan
6 / 5 / 1
Регистрация: 22.03.2016
Сообщений: 335
10.05.2017, 21:06  [ТС]
Закрывайте тему. Всё получилось .Спасибо большое Даценд-ту, очень сильно помог.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
10.05.2017, 21:06
Помогаю со студенческими работами здесь

Как преобразовать DWORD в System::String?
Есть значение в DWORD, которое нужно вывести в textBox'e, по нажатию кнопки. Как это можно сделать? Перепробовал кучу способов из...

Невозможно преобразовать параметр 1 из "System::Net::Mail::SmtpClient ^" в "System::String ^"
Здравствуйте. Компилятор ругается на следующую строку: SmtpClient client = gcnew SmtpClient("smtp.mail.ru", 2525); Что можно...

Преобразовать System::String^ в char*
Есть строка: String^ str1; Как её можно преобразовать в const char*, например, для itoa()? P.S: Заметьте, что в char*, а не в...

Как преобразовать System::String в char?
Нужны рабочие варианты для visual studio C++. В инете куча примеров которые не работают в VS2015.

Как преобразовать const unsigned char в System::String^?
Всем привет. Есть задание на Visual Studio c++ написать небольшую программку с Windows Forms. Руководствуясь собственной логикой...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
Установка Emscripten SDK (emsdk) и CMake на Windows для сборки C и C++ приложений в WebAssembly (Wasm)
8Observer8 30.01.2026
Чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. Система контроля версиями Git. . .
Подключение Box2D v3 к SDL3 для Android: физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru