![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Русская кодировка в *.txt файле [D7, Win2k]
onics © (2004-07-06 15:37:00)Добрый день. Проблема: есть txt файл. При считывании из файла в переменную string куска строки русские буквы превращяются в абракадабру. Как решить проблему?
y-soft (2004-07-06 16:17:00) [1]>Anatoly Podgoretsky © (06.07.04 16:12) [17]
У меня редактор на основе TMemo/TRichEdit позволяет просматривать тексты, которые не совпадает с кодовой страницей Windows. Без всякиз перекодировок к нее. Я усилий для этого не принимал, это все поддерживает Виндоус.
А эти строки твой редактор отобразит? :)
الكوليسترول
น้ำมะตูม น้ำใบเตย
Այսպիսով Հայաստանը
इराक़ में सद्दाम
ཀ ཁ ག གྷ ང ཅ ཆ ཇ ཉ ཊ ཋ
恐れ入りますがフレ
敬请原谅
인증,공개하인증,공개하
Ένωσης εκδίδεται
່ອງທ່ຽວທຳມະຊາດ
הדרך המהירה
სტრატეგიული
onics (2004-07-06 16:17:00) [2]>y-soft
Проблема происходит при считывании из файла и последующем присвоении переменной типа string (функция Readln)
>КаПиБаРа
Попробую Ваш вариант завтра т.к. срочно переключаюсь на другую задачу. О результате сообщу.
Anatoly Podgoretsky (2004-07-06 16:12:00) [3]y-soft © (06.07.04 16:07) [16]
Нет ты утверждаешь, что "Абракадабра возникает, когда кодовая страница файла не совпадает с кодовой страницей Windows", а это ни так!
У меня редактор на основе TMemo/TRichEdit позволяет просматривать тексты, которые не совпадает с кодовой страницей Windows. Без всякиз перекодировок к нее. Я усилий для этого не принимал, это все поддерживает Виндоус.
По поводу можно ли ее решить указаным способом ничего не известно, может можно, а может нет, он же ничего не говорит о реальной кодировки текста, кроме того что вроде бы это какая то одна из множества русских кодировок.
y-soft (2004-07-06 16:07:00) [4]>Anatoly Podgoretsky © (06.07.04 15:58) [13]
Ну так Анатолий, не сказано же в чем автор увидел крякозябры и какие... Я предположил, что в своей программе... IE и системные просмотрщики позволяют смотреть во многих кодировках и даже в Unicode, а в Delphi по умолчанию выставляется DEFAULT_CHARSET...
onics (06.07.04 15:59) [14]
Если проблема у Вас возникает при просмотре в Вашей программе, то ее можно решить, установив для соответствующего Edit (Label, Memo) свойства фонта
КаПиБаРа (2004-07-06 16:02:00) [5]
> OemToChar нет в хелпе
"C:\Program Files\Common Files\Borland Shared\MSHelp\MAPI.HLP"
onics (2004-07-06 15:59:00) [6]>свойствах шрифта поставить OEM_CARSET или шрифт типа Terminal
Не могу понять.
Anatoly Podgoretsky (2004-07-06 15:58:00) [7]y-soft © (06.07.04 15:46) [6]
Неправда ваша, например в ИЕ и не только в нем я могу посмотреть текстовый файл как минимум в 20 разничных кодировках и только одна из них совпадает с кодовой страницей Windows
КаПиБаРа (2004-07-06 15:58:00) [8]Ненадо... Ненадо в студию что попало тащить... :)
onics (2004-07-06 15:57:00) [9]OemToChar нет в хелпе.
Fay (2004-07-06 15:53:00) [10]Код в студию.
y-soft (2004-07-06 15:53:00) [11]Если кодировка DOS, то может проще в свойствах шрифта поставить OEM_CARSET или шрифт типа Terminal?
onics (2004-07-06 15:52:00) [12]Пишится все нормально, затычка возникает только с русским языком
КаПиБаРа (2004-07-06 15:47:00) [13]F1 - OemToChar
y-soft (2004-07-06 15:46:00) [14]Кодировка текстового файла может быть разной. Абракадабра возникает, когда кодовая страница файла не совпадает с кодовой страницей Windows. Или файл может быть вообще записан в кодировке UTF-8, UTF-16 или даже UTF-32. В последних 2-х случаях в string вообще запишется только часть файла или вообще ничего :)
Anatoly Podgoretsky (2004-07-06 15:44:00) [15]Win, DOS это не русская или немецкая, в OEM/ANSI
onics (2004-07-06 15:42:00) [16]По ТЗ - Win, но реально я думаю DOS
onics (2004-07-06 15:41:00) [17]А поподробней можно?
КаПиБаРа (2004-07-06 15:41:00) [18]Кодировка в файле какая?
Anatoly Podgoretsky (2004-07-06 15:40:00) [19]Английскую кодировку в русскую без переводчика не сделать.