Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 27.10.2012, 13:34   #1
Lost7070
Пользователь
 
Регистрация: 02.03.2012
Сообщений: 25
Вопрос Перевод из String^ в char*. Русскиме символы

Доброго времени суток. Нужно перевести String^ в char*.
Делаю следующим образом:
Код:
String^ name_d=Convert::ToString(textBox1->Text);
*temp = new char[name_d->Length];
int i;
for(i=0; i<name_d->Length;i++)
{
temp[i] = name_d[i];
}
temp[i]='\0';
С цифрами и английскими символами работает отлично. С кириллицей в char заносится полный бред.
Подскажите как испавить ситуацию. Возможно нужно что-то прописать или подключить.
Заранее благодарен всем откликнувшимся.
Lost7070 вне форума Ответить с цитированием
Старый 27.10.2012, 18:39   #2
Abstraction
Старожил
 
Аватар для Abstraction
 
Регистрация: 25.10.2011
Сообщений: 3,178
По умолчанию

Цитата:
Сообщение от Lost7070 Посмотреть сообщение
Доброго времени суток. Нужно перевести String^ в char*.
Делаю следующим образом:
Код:
String^ name_d=Convert::ToString(textBox1->Text);
*temp = new char[name_d->Length];
int i;
for(i=0; i<name_d->Length;i++)
{
temp[i] = name_d[i];
}
temp[i]='\0';
С цифрами и английскими символами работает отлично. С кириллицей в char заносится полный бред.
Подскажите как испавить ситуацию. Возможно нужно что-то прописать или подключить.
Заранее благодарен всем откликнувшимся.
Одно слово: кодировка. name_d[i] - символ Unicode, может занимать больше одного байта; temp[i] - char, ровно 1 байт. При этом, нет "общепринятого" символа однобайтовой кодировки "русское а"; вообще, байты со значениями 128+ имеют разное значение при разных кодовых страницах. Наиболее используемая кодовая страница для кириллицы - Windows-1251.
Релевантная ссылка в MSDN. Обратите особое внимание на метод GetEncoder.
Abstraction вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
string-char-wchar_t-char-string чето потерял magog7 Общие вопросы C/C++ 0 08.08.2011 20:21
перевод в string из unsigned char Dimarik Общие вопросы C/C++ 5 22.03.2011 22:46
перевод char * в String^ Visual c++ Freeuser051 Visual C++ 2 07.10.2010 13:46
String и Char Volt Общие вопросы Delphi 3 17.02.2009 08:30
char->string eds Общие вопросы .NET 1 28.11.2007 17:22