Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: -0.984 c
1-93882
atmospheric
2004-02-16 11:36
2004.02.29
public для function


1-94007
GarryFV
2004-02-13 19:27
2004.02.29
MDI Child из DLL


3-93799
Mr. Chel
2004-02-03 15:06
2004.02.29
Добавление LookUp поля


14-94157
Lucky[ELF]
2004-02-08 12:13
2004.02.29
Что же лучше C или Pas? Linux или Windows?


1-94022
CrossOut
2004-02-16 20:28
2004.02.29
КАК вставить какую-нибудь программу внутрь EXE файла?




   Наверх