Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.02.29;
Скачать: CL | DM;

Вниз

Обработка тестовых файлов в UTF-8   Найти похожие ветки 

 
ANS   (2004-02-16 21:50) [0]

Конкретная задача. Выбрать различную информацию из нескольких текстовых файлов (UTF-8), содержащих например символы немецкого и французского языков, наряду с русским, и склеить в другой файл. Специфика задачи делает удобным построчную обработку файлов. В связи с этим вопрос - какие готовые решения есть для почтрчного чтения строк из файла с кодировкой UTF-8? Желательно бы, что-нибудь типа функций readln и writeln, но позволяющих работать с UTF-8. Заранее благодарен за помощь.


 
ANS   (2004-02-17 05:48) [1]

Up


 
ANS   (2004-02-17 09:40) [2]

up


 
REA ©   (2004-02-17 09:51) [3]

Читать как обычно
D7:

{ PChar/PWideChar Unicode <-> UTF8 conversion }

// UnicodeToUTF8(3):
// UTF8ToUnicode(3):
// Scans the source data to find the null terminator, up to MaxBytes
// Dest must have MaxBytes available in Dest.
// MaxDestBytes includes the null terminator (last char in the buffer will be set to null)
// Function result includes the null terminator.

function UnicodeToUtf8(Dest: PChar; Source: PWideChar; MaxBytes: Integer): Integer; overload; deprecated;
function Utf8ToUnicode(Dest: PWideChar; Source: PChar; MaxChars: Integer): Integer; overload; deprecated;

// UnicodeToUtf8(4):
// UTF8ToUnicode(4):
// MaxDestBytes includes the null terminator (last char in the buffer will be set to null)
// Function result includes the null terminator.
// Nulls in the source data are not considered terminators - SourceChars must be accurate

function UnicodeToUtf8(Dest: PChar; MaxDestBytes: Cardinal; Source: PWideChar; SourceChars: Cardinal): Cardinal; overload;
function Utf8ToUnicode(Dest: PWideChar; MaxDestChars: Cardinal; Source: PChar; SourceBytes: Cardinal): Cardinal; overload;

{ WideString <-> UTF8 conversion }

function UTF8Encode(const WS: WideString): UTF8String;
function UTF8Decode(const S: UTF8String): WideString;

{ Ansi <-> UTF8 conversion }

function AnsiToUtf8(const S: string): UTF8String;
function Utf8ToAnsi(const S: UTF8String): string;


 
ANS   (2004-02-17 09:57) [4]

REA.

Спасибо, но проблема не в преобразовании строк, а в считывании UTF-8 строк из файла (так что бы автоматически отдельно каждая строка считывалась), неохото долго возиться. Или единственный спосб - читать в буфер, а разбирать вручную.

Если это так, то буду очень признателей хотя бы за детальное описание формата UTF-8.



Страницы: 1 вся ветка

Текущий архив: 2004.02.29;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.064 c
14-94160
xion
2004-02-07 04:37
2004.02.29
Функция Shell_NotifyIcon у меня вызывает RunTime ошибки. Почему?


11-93820
Puke Zero
2003-06-13 23:31
2004.02.29
XP Visual Style для GroupBox


6-94069
denkop
2003-12-16 01:47
2004.02.29
Проблема с сокетами


3-93809
Карелин Артем
2004-02-03 13:25
2004.02.29
Как сделать такой запрос?


3-93781
Я хороший ;)
2004-02-03 05:49
2004.02.29
Связь с DBListBox