Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.02.29;
Скачать: [xml.tar.bz2];

Вниз

Обработка тестовых файлов в 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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.009 c
6-94089
Silentor
2003-12-24 20:45
2004.02.29
Загрузка ресурсов: blocking vs nonblocking


7-94207
Aleksey
2003-12-12 06:20
2004.02.29
Shell в


14-94136
graY
2004-02-06 06:20
2004.02.29
А вообще DirectX + Delphi >Игра?


1-94018
Sash
2004-02-16 07:04
2004.02.29
Handle окна


4-94233
DillerXX
2003-12-22 17:12
2004.02.29
Сообщения





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский