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

Вниз

Кирилица в имени файла.   Найти похожие ветки 

 
The Sound ©   (2005-11-12 18:56) [0]

Привет. Сначала часть кода:
var
FileN :string;
fob :file of byte;
FSize :Longint;
...
procedure GetSize(const FileN :String);
begin
assignfile(fob,FileN);
//writeln(FileN);
//readln;
reset(fob);
FSize := FileSize(fob);
CloseFile(fob);
end;

Процедура работает отлично, но если переменная FileN содержит кирилицу, сразу выскакивает ошибка(Некорректное имя файла, фаил не найден). Подскажите как это исправить? Спасибо.
P.S. Если это важно, приложение консолевое.


 
sniknik ©   (2005-11-12 19:47) [1]

> P.S. Если это важно, приложение консолевое.
очень важно, т.к. в консоли часто ввод/вывод в Oem кодировке

т.е. надо использовать (если у тебя это так)
function ToChar(const Str: String): String;
begin
 SetLength(result, Length(Str));
 OemToChar(PChar(Str), PChar(result));
end;

GetSize(ToChar(xxx))

а еще лучше и GetSize поменять на типа такого (© компоненты Indy)
function FileSizeByName(const AFilename: string): Int64;
begin
 with TFileStream.Create(AFilename, fmOpenRead or fmShareDenyNone) do
 try
   Result := Size;
 finally Free; end;
end;


 
The Sound ©   (2005-11-12 21:38) [2]

Спасибо за ответ, но...

При использовании "function ToChar" ( GetSize(ToChar(FileN)); ), вылетает ошибка: "File acess denied"(нет доступа к файлу?).

А при "function FileSizeByName" ( FileSizeByName(FileN); )- "Can"t open file C:\л<‹^‹~ ы;лv‹Э\;|$v‹|$;ыvj\h+ыWSи&ьяя…А.mp3" что-то типа этого =/

Удручающе =( Будут какие мысли по этому поводу?



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

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

Наверх




Память: 0.47 MB
Время: 0.035 c
2-1131359924
Compressor
2005-11-07 13:38
2005.11.27
Шифрование.


1-1130764690
Zelius
2005-10-31 16:18
2005.11.27
CustomDraw в TListView


3-1129265006
kvi
2005-10-14 08:43
2005.11.27
ограничение на число полей в таблицах paradox


14-1130999889
ANB
2005-11-03 09:38
2005.11.27
Нам в компанию срочно требуется документатор


14-1130875980
x.pro
2005-11-01 23:13
2005.11.27
Подскажите, пожалуйста, какую-нибудь философскую фразу...