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

Вниз

Текстовый файл из DOS   Найти похожие ветки 

 
Марат   (2004-02-10 12:42) [0]

Здравствуйте, мастера. Проблема такая: при считывании из текстового файла в StringGrid вместо букв-абракадабра. Можно ли решить такую проблему?


 
Radionov Alexey   (2004-02-10 12:46) [1]

Страница кодовая другая. См. OemToChar:
--------------
The OemToChar function translates a string from the OEM-defined character set into either an ANSI or a wide-character string. (OEM stands for original equipment manufacturer.)
-----------------


 
Марат   (2004-02-10 12:53) [2]

А где такое прописывается?


 
Radionov Alexey   (2004-02-10 12:57) [3]

>Марат (10.02.04 12:53) [2]
Либо конвертировать файл во время загрузки. Либо после нее конвертировать уже загруженные данные (часто много медленнее).
Например, прогнать через OEMToChar свойство Text.


 
Марат   (2004-02-10 13:02) [4]

А можно небольшой пример?


 
Radionov Alexey   (2004-02-10 13:12) [5]

Несколько расточительный пример:

Procedure TForm1.Button7Click(Sender: TObject);
Var
S: String;
Begin
With TStringList.Create Do
Try
LoadFromFile("someOEMfile.txt");
S := Text;
OemToChar(PChar(S), PChar(S));
Memo1.Lines.Text := S;
Finally
free;
End
End;


 
Radionov Alexey   (2004-02-10 13:13) [6]

В догонку к [5]
Нужно отслеживать случай, когда S ничего не содержит. Иначе - AV


 
Марат   (2004-02-10 13:20) [7]

У меня вот так:
...
ReadLn(F,S);
OemToChar(PChar(S),PChar(S));
т.е. читаю строку, но выдается ошибка "Access violation at address ... in module "user32.dll""


 
Radionov Alexey   (2004-02-10 13:25) [8]

>Марат (10.02.04 13:20) [7]
ReadLn(F,S);
if S<>"" then
OemToChar(PChar(S),PChar(S));


 
zamkom   (2004-02-10 13:27) [9]

Попробуй так:
OemToChar(@S[1], @S[1])


 
Radionov Alexey   (2004-02-10 13:36) [10]

>zamkom © (10.02.04 13:27) [9]
Опять-таки S должна быть не пуста.


 
Марат   (2004-02-10 13:44) [11]

Большое СПАСИБО!!!



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

Форум: "Основная";
Текущий архив: 2004.02.25;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.264 c
14-80193
Штурмовик
2004-01-30 23:20
2004.02.25
Помогите студенту


7-80337
sden
2003-12-06 15:46
2004.02.25
Проблема с OVERLAPPED


3-79570
Alex-kosmonavt
2004-01-29 14:51
2004.02.25
@@IDENTITY


1-79902
Dr.Karter
2004-02-09 14:38
2004.02.25
Копирование папки


14-80131
il
2004-02-02 15:03
2004.02.25
Где найти бесплатный web-сервис, публикующий курсы валют?





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский