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

Вниз

Кодировка   Найти похожие ветки 

 
msys ©   (2002-01-02 21:06) [0]

Как определить в какой кодировке текстовый файл(DOS или WIN) ?
Спасиба.


 
Вадим ©   (2002-01-02 21:15) [1]

Я делал так:

type
TCodePage = (cpDOW, cpWIN);

function SomeFunc(s: string): TCodePage;
const
DOS: set of char = (...);
WIN: set of char = (...);
var
d, w: integer;
begin
d := 0;
w := 0;
for s := 1 to Length(s) do
begin
if s[i] in DOS then Inc(d);
if s[i] in WIN then Inc(w);
end;
if d > w then Result := cpDOS
else Result := cpWIN;
end;


 
Quest ©   (2002-01-03 12:06) [2]

........
const
OemCharSet = [128..159];//[А..Я] - заглавные буквы Dos
// кодировки без буквы "Ё" - она пересекается с Win кодировкой

....
// s - строка символов
....
S_tmp:=UpperCase(Trim(s));// возвести в верхний регистр

IF (S_tmp[1]) in OemCharSet) Then ... // s - в DOS кодировке
...
// или
IF (Copy(S_tmp,1,1) in OemCharSet) Then ... // s - в DOS кодировке


 
Quest ©   (2002-01-03 12:12) [3]

разумеется предварительно необходимо считать эту строку из файла:

AssignFile(DataFile, "File.txt");
Reset(DataFile);
Readln(DataFile, S);


 
Quest ©   (2002-01-03 12:16) [4]

:) ... и ещё, перед проверкой на вхождение в массив OemCharSet, необходимо отсечь цифры и спец. символы ... Удачи!



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

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

Наверх




Память: 0.47 MB
Время: 0.008 c
4-66390
Asisyay
2001-11-19 18:24
2002.01.21
приоритет


4-66397
SemFLY
2001-11-21 02:16
2002.01.21
Ничего не понимаю !?!? :(((( RasHangUp


3-66190
dimsfdf
2001-12-17 14:44
2002.01.21
А какой сейчас самый свежий ORACLE?


1-66280
Lazyk
2002-01-04 14:57
2002.01.21
Printer accounting


4-66416
absent
2001-11-16 07:52
2002.01.21
Проблемы с EM_GETTEXTRANGE В Richedit 3.0