forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Библиотеки (http://forum.boolean.name/forumdisplay.php?f=124)
-   -   Lib_jsr75: работа с файловой системой. (http://forum.boolean.name/showthread.php?t=5498)

vad74 22.09.2009 20:04

Ответ: Lib_jsr75: работа с файловой системой.
 
ViNT
Переделал на использование jsr75ex.
1. Виснет при findfirst(Dir); Если в Dir нет папок или файлов, Вместо того чтоб вернуть пустую строку как в конце списка возвращает findnext.
2. Скорость работы примерно равна варианту с jsr75i, и составила 1200 мс на 30 папок и файлов. Почемуто выйгрыша нет. Вот процедура:
PHP код:

procedure ReadDir(MyDir string);  // читать все папки и файлы в 2 строки
var time integer;
begin
  time 
:= GetRelativeTimeMs;
  if 
MyDir '' then begin
    DirsStr 
:= jsr75ex.get_roots;  // взять корень файловой системы
    
FilesStr := '';
  
end  
  
else begin
    DirsStr 
:= '';  
    
FilesStr := '';
    
:= jsr75ex.findfirst('/'+MyDir);     // взять первый объект
    
while <> '' do begin
      
if jsr75ex.is_directory('/'+MyDir s) > 0 then
        DirsStr 
:= DirsStr '|'
      
else
        
FilesStr := FilesStr '|';
      
:= jsr75ex.findnext
    
end;  {while} 
  
end
  
DrawText(IntegerToString(GetRelativeTimeMs time), 10200);
  
repaint;
  
delay(2000); 
end


artemff 29.12.2009 01:33

Ответ: Lib_jsr75: работа с файловой системой.
 
У меня почему-то MP пишет нет ...
функций в jsr75i: Есть похоже только одна функция get_dirs...

Molegos 18.04.2010 11:13

Ответ: Lib_jsr75: работа с файловой системой.
 
Подскажите ,пожалуйста, почему у меня МП (2.02 и 3.0 бета 6) вылетает с ошибкой "Отправлять, не отправлять отчет" при компиляции кода?
PHP код:

jsr75i.open_file('/e:/res.txt');
res:=jsr75i.get_stream

Заранеее спасибо.

im_zorg 18.04.2010 12:44

Ответ: Lib_jsr75: работа с файловой системой.
 
Цитата:

Сообщение от Molegos (Сообщение 144967)
Подскажите ,пожалуйста, почему у меня МП (2.02 и 3.0 бета 6) вылетает с ошибкой "Отправлять, не отправлять отчет" при компиляции кода?
PHP код:

jsr75i.open_file('/e:/res.txt');
res:=jsr75i.get_stream

Заранеее спасибо.

Попробуй поставить совместимость с windows 98.
Правая кнопка мыши на ярлыке►Свойства►Совместимость.

Molegos 19.04.2010 11:14

Ответ: Lib_jsr75: работа с файловой системой.
 
При компиляции ошибка на строке с
jsr75i.open_file('/e:/res.txt');
error, identifier '(' is not a procedure or virable name.
Чего это такое?

ViNT 19.04.2010 14:34

Ответ: Lib_jsr75: работа с файловой системой.
 
Вообще это глюк MP, но ошибка видимо в том, что нет присваивания переменной результата, возвращаемого функцией.
Должно быть нечто в роде res:=jsr75i.open_file('/e:/res.txt');

DeaDCore 07.03.2013 18:44

Ответ: Lib_jsr75: работа с файловой системой.
 
Вложений: 1
Кроме исправления бага с зависаниями добавил:
Код:

public static int create_folder(String name) - создать папку
public static int folder_size(String name) - получить размер дериктории в байтах

Осмелился добавить себя в "доработчиков" библиотеки :rolleyes:

Fred-boy 11.05.2013 17:36

Ответ: Lib_jsr75: работа с файловой системой.
 
Piligrim, какой процедурой удаляется папка?

RblSb 05.03.2014 23:15

Ответ: Lib_jsr75: работа с файловой системой.
 
Вложений: 1
Небольшая модификация:
write_string_a - запись строки с преобразованием ascii>unicode (записывает русский текст в файл в win-кодировке)
Автор: DaGGeR


Часовой пояс GMT +4, время: 09:39.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot