Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Печать в файл текста в формате Unicode

7.3K
14 апреля 2007 года
LamerMFC
48 / / 17.09.2005
Проблема в следующем:

Имеется слово – pljuč, которое хранится в переменной strWordInUnicode типа CString.
(после #define _UNICODE в CString хранится текст в формате Unicode)

После того как я печатаю это слово в текстовый файл от него остается – plju, т.е. обрезается буква со шляпкой.

Вот кусок кода:

FILE *pF = _wfopen(L"123.txt", L"w");
{
fwprintf(pF ,strWordInUnicode);
}
fclose(pF);

как быть?
461
15 апреля 2007 года
gerard
102 / / 20.12.1999
Попробуйте вот так:

fwprintf(pF, L"%ls", (LPCTSTR)strWordInUnicode);

или так:

fwprintf(pF, L"%ls", strWordInUnicode.GetBuffer(5));
7.3K
15 апреля 2007 года
LamerMFC
48 / / 17.09.2005
Уже пробовал. Даже если написать

fwprintf(pF, strWordInUnicode);

все равно происходит обрезка символа со шляпкой, я думаю, что здесь проблема на уровне потока, т.к. если после данной функции запустить MessageBox с той же строкой то все нормально, отображается полное слово. В чем проблема?
2.2K
16 апреля 2007 года
REFOT
181 / / 08.04.2005
Вот так всё будет работать:

 
Код:
FILE *pF = _wfopen(L"123.txt",L"wt+,ccs=UTF-16LE");  
fwprintf(pF,L"pljuč");
fclose(pF);
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог