Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.58/12: Рейтинг темы: голосов - 12, средняя оценка - 4.58
0 / 0 / 1
Регистрация: 01.08.2009
Сообщений: 18
1

Сохранение в файл массива wchar_t. Кодировка?

12.02.2010, 11:13. Показов 2436. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Привет!
Есть проблема. Нужно вывести в файл массив wchar_t* Text. Использую функцию
fwprintf(out,L"%s",Text) Эта функция хорошо выводит латиницу, но не выводит кириллицу (выводит ????).
Как вывести в нормальной кодировке. Возможно другим способом.
Заранее спасибо
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.02.2010, 11:13
Ответы с готовыми решениями:

Wchar_t и кодировка
Доброго времени суток! Возникла проблема при работе с openGL библиотекой DevIL в Embarcadero RAD...

Сохранение/Загрузка массива в файл тхт
void __fastcall TForm1::Button1Click(TObject *Sender) { i=StrToInt(Edit2->Text); ...

Ошибка при подключении к XE3 библиотеки для VS: "Please use native wchar_t type (/Zc:wchar_t)"
Господа, пытаюсь прикрутить к билдеру библиотеку для работы с автокадом. К сожалению она жестко...

Сохранение положения компонента на форме (Сохранение параметра в Ini-файл)
Не знаю верно ли назвал тему. Доброго вечера тебе, всяк сюда входящий. Подскажите пожалуйста с...

2
Эксперт С++
7175 / 3234 / 81
Регистрация: 17.06.2009
Сообщений: 14,164
12.02.2010, 20:08 2
Эта функция хорошо выводит латиницу, но не выводит кириллицу (выводит ????).
И чем ты увидел эти ????
Выложи файл.
Выложи код.
0
0 / 0 / 1
Регистрация: 01.08.2009
Сообщений: 18
12.02.2010, 23:33  [ТС] 3
Лучший ответ Сообщение было отмечено P1lot как решение

Решение

Символы ???? выводятся в выходной файл в точном соответствии с теми символами которые должны быть.
Собственно с кодом все очень просто:
C++
1
2
3
4
wchar_t* Text=Memo1->Lines->GetText(); // Есть мемо, из него получается массив
//.....
// и этот массив я вывожу в файл функцией
fwprintf(out, L"%s", Text);
Возможно я зря уперся в это дело. Задача в следующем: есть текст в Memo, нужно дописать его в файл, затем обработать кое-что, но с этим проблем нет. Я использую для дальшейшей работы тип wchar_t и файл открыт для дозаписи функцией fopen. Поэтому хотелось бы вывести текст в файл именно так.
Текстовый файл прикрепил. ?????? это русские буквы абвгде... латиница как видно отображается нормально. Цифры - результат работы программы.
Вложения
Тип файла: txt out.txt (301 байт, 60 просмотров)
0
12.02.2010, 23:33
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
12.02.2010, 23:33
Помогаю со студенческими работами здесь

Как скопировать файл из одной папки в другую! Cannot convert 'UnicodeString' to 'const wchar_t *'
Надо скопировать файл который находится в директории программы в папку мои документы Делаю так...

Кодировка текста и wchar_t
В общем, такая проблема. Нужно вывести названия папок в окно. Ищу папки в директории и беру имена с...

Сохранение пути файла в wchar_t
Программа для копирования файла #include "pch.h" #include <iostream> #include < windows.h> ...

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


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru