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

Вниз

Отключение Exception: Stream.LoadFromFile(FileName);   Найти похожие ветки 

 
Leaner ©   (2004-09-25 17:39) [0]

Подскажите, пожалуйста, каую директиву компилятора надо временно
изменить ( не в свойствах проекта ),
чтобы при отладке  Stream.LoadFromFile(FileName);
не давал исключения ?
Спасибо.


 
Palladin ©   (2004-09-25 17:42) [1]

Какого исключения? Они разные могут возникнуть...


 
Leaner ©   (2004-09-25 17:52) [2]

>Какого исключения? Они разные могут возникнуть...
Не найден файл.


 
Palladin ©   (2004-09-25 17:54) [3]

Проверить на существование прежде чем делать LoadFromFile...


 
Leaner ©   (2004-09-25 18:02) [4]

>Проверить на существование прежде чем делать LoadFromFile...
Хотелось бы, не делая лишних проверок.
function Get_FileSizeStream(const FName:string;Ms:TMemoryStream):Int64;
begin
try
 Ms.LoadFromFile(FName);
 Result:=Ms.Size;
except
 Result:=-1;
end;
end;


 
Palladin ©   (2004-09-25 18:05) [5]

1 Не понял смысла функции...
2 Чем тебе лишние проверки не угодили?

function Get_FileSizeStream(const FName:string;Ms:TMemoryStream):Int64;
begin
If Not FileExists(FName) Then Result:=-1 Else
try
 Ms.LoadFromFile(FName);
 Result:=Ms.Size;
except
 Result:=-1;
end;
End;

Религия не позволяет?


 
Leaner ©   (2004-09-25 18:13) [6]

Эта процедура будет очень много раз запрашиваться.
Надо подобрать самый быстрый алгоритм полученя
размера файла.
Вот я и сравниваю разные


 
Palladin ©   (2004-09-25 18:15) [7]

с ума сойти, а FileSize, GetFileSize, FileSizeByName кому даны? тоесть что бы узнать размер 4 гигабайтного файла ты собрался его весь грузить в память? оригинальное решение...


 
Leaner ©   (2004-09-25 18:19) [8]

Я начинающий. Вот и пытаюсь сравнивать разные способы.


 
Palladin ©   (2004-09-25 18:23) [9]

Даже невооруженным взглядом, следуя простой логике, понятно что чтобы узнать размеры всех файлов в директории тебе нужно их все последовательно позагружать в память... и это один из самых неоптимальных способов, второй после способа: читать по байту из файла и прибавлять к переменной по единице... начинающий то понятно, но голова то на плечах должна быть...


 
Leaner ©   (2004-09-25 18:26) [10]

А какой способ Вы порекомендуете ?


 
Palladin ©   (2004-09-25 18:31) [11]


> FileSize, GetFileSize, FileSizeByName

Я уже перечислил функции предназначеные именно для этого...
FileSize и FileSizeByName используют GetFileSize из WinAPI, причем FileSizeByName функция от третьих разработчиков... Какой воспользоватся? Зависит от ситуации... если работать с файлами через WinAPI то соответственно и использовать GetFileSize, работая с функциями из System, соответственно использовать FileSize...


 
Leaner ©   (2004-09-25 18:36) [12]

Спасибо !



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

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

Наверх





Память: 0.47 MB
Время: 0.035 c
1-1096030702
Mirror
2004-09-24 16:58
2004.10.10
GetLogicalDrives


1-1096357832
PEAKTOP
2004-09-28 11:50
2004.10.10
Application.Title в консольном приложении


1-1096088618
Kair()
2004-09-25 09:03
2004.10.10


3-1095160139
/glokk
2004-09-14 15:08
2004.10.10
вьювы из хп :(


1-1096305883
sexy
2004-09-27 21:24
2004.10.10
Рэндом число из массива





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