Форум программистов, компьютерный форум, киберфорум
Бета-тестирование
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 5.00/32: Рейтинг темы: голосов - 32, средняя оценка - 5.00
 Аватар для GreenPanda
178 / 29 / 3
Регистрация: 29.08.2010
Сообщений: 228

Утилитa для сортировки файлов

07.09.2011, 00:43. Показов 6731. Ответов 79
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Вот зделал неболбшую утилиту для сортировки файлов )) хотелось бы узнать ваше мнение)
Только поменяте New folder на чтонить другое
Миниатюры
Утилитa для сортировки файлов  
Вложения
Тип файла: zip Sorter .zip (484.0 Кб, 79 просмотров)
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
07.09.2011, 00:43
Ответы с готовыми решениями:

Скрипт для сортировки файлов
Добрый день. Прощу помочь создать Батник. После восстановления файлов с убитого винта, в одну папку сохранилось огромное количество...

Программа для сортировки файлов
Написать программу, которая сортирует файлы (по дате, имени, размеру, типу), как по возрастанию так и по убыванию. Также должны...

Нужна программа для сортировки файлов
Помогите найти программу, которая бы автоматически сортировала файлы по расширениям.

79
 Аватар для GreenPanda
178 / 29 / 3
Регистрация: 29.08.2010
Сообщений: 228
08.09.2011, 23:04  [ТС]
Студворк — интернет-сервис помощи студентам
Ах да вот скрин нового дезайна
Миниатюры
Утилитa для сортировки файлов  
1
 Аватар для GreenPanda
178 / 29 / 3
Регистрация: 29.08.2010
Сообщений: 228
08.09.2011, 23:27  [ТС]
И может ктонибуть привести пример копирования файлов средствами самого делфи :/
0
 Аватар для EvilVoodoo
259 / 94 / 24
Регистрация: 18.04.2011
Сообщений: 719
Записей в блоге: 1
09.09.2011, 06:54
Цитата Сообщение от mischka Посмотреть сообщение
там есть поле где можно ввести например Readmy и все ридми со всеми расширениями уйдут в указаную папку
Вопрос был в другом - может ли ваша программа выбрать файлы Readmy1.txt Project1.dpr Project1.pas Readmy1.pdf Project1.exe за один проход программы, т.е. чтобы я не выбирал сначала все readmy, потом Project?

Добавлено через 10 минут
Цитата Сообщение от mischka Посмотреть сообщение
И может ктонибуть привести пример копирования файлов средствами самого делфи :/
Копирование методом TurboPascal
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
type
  {Для индикации процесса копирования}
  TCallBack = procedure (Position, Size: Longint);
 
procedure FastFileCopy(const InfileName, OutFileName: string;
          CallBack: TCallBack);
const
  BufSize = 3*4*4096; { Размер буфера 48Kbytes }
type
  PBuffer = ^TBuffer;
  TBuffer = array [1..BufSize] of Byte;
var
  Size : integer;
  Buffer : PBuffer;
  infile, outfile : file;
  SizeDone, SizeFile: Longint;
begin
  if (InFileName <> OutFileName) then
  begin
    buffer := nil;
    AssignFile(infile, InFileName);
    System.Reset(infile, 1);
    try
      SizeFile := FileSize(infile);
      AssignFile(outfile, OutFileName);
      System.Rewrite(outfile, 1);
      try
        SizeDone := 0; New(Buffer);
        repeat
          BlockRead(infile, Buffer^, BufSize, Size);
          Inc(SizeDone, Size);
          CallBack(SizeDone, SizeFile);
          BlockWrite(outfile,Buffer^, Size)
        until
          Size < BufSize;
        FileSetDate(TFileRec(outfile).Handle,
        FileGetDate(TFileRec(infile).Handle));
      finally
        if Buffer <> nil then
          Dispose(Buffer);
        System.close(outfile)
      end;
    finally
      System.close(infile);
    end;
  end
  else
    raise EInOutError.Create('File cannot be copied into itself');
end;
Копирование методом потока

Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
procedure FileCopy(const SourceFileName, TargetFileName: string);
var
  S, T : TFileStream;
begin
  S := TFileStream.Create(sourcefilename, fmOpenRead );
  try
    T := TFileStream.Create(targetfilename, fmOpenWrite or fmCreate);
    try
      T.CopyFrom(S, S.Size ) ;
      FileSetDate(T.Handle, FileGetDate(S.Handle));
    finally
      T.Free;
    end;
  finally
    S.Free;
  end;
end;
Копирование методом LZExpand

Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
uses
  LZExpand;
 
procedure CopyFile(FromFileName, ToFileName : string);
var
  FromFile, ToFile: file;
begin
  AssignFile(FromFile, FromFileName);
  AssignFile(ToFile, ToFileName);
  Reset(FromFile);
  try
    Rewrite(ToFile);
    try
      if LZCopy(TFileRec(FromFile).Handle, TFileRec(ToFile).Handle)<0 then
        raise Exception.Create('Error using LZCopy')
    finally
      CloseFile(ToFile);
    end;
  finally
    CloseFile(FromFile);
  end;
end;
Копирование методами Windows

Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
uses
  ShellApi;
 
function WindowsCopyFile(FromFile, ToDir : string) : boolean;
var
  F: TShFileOpStruct;
begin
  F.Wnd := 0; F.wFunc := FO_COPY;
  FromFile:=FromFile+#0; F.pFrom:=pchar(FromFile);
  ToDir:=ToDir+#0; F.pTo:=pchar(ToDir);
  F.fFlags := FOF_ALLOWUNDO or FOF_NOCONFIRMATION;
  result:=ShFileOperation(F) = 0;
end;
 
// пример копирования
procedure TForm1.Button1Click(Sender: TObject);
begin
  if not WindowsCopyFile('C:\text\filename.txt', GetCurrentDir) then
    ShowMessage('Copy Failed');
end;
1
 Аватар для GreenPanda
178 / 29 / 3
Регистрация: 29.08.2010
Сообщений: 228
09.09.2011, 19:45  [ТС]
Цитата Сообщение от EvilVoodoo Посмотреть сообщение
Вопрос был в другом - может ли ваша программа выбрать файлы Readmy1.txt Project1.dpr Project1.pas Readmy1.pdf Project1.exe за один проход программы, т.е. чтобы я не выбирал сначала все readmy, потом Project?
нет она закинет вам все ридми 1 в папку к примеру ридми потом вы можете выбрать все project1.* и кинуть их в проект 1
Цитата Сообщение от EvilVoodoo Посмотреть сообщение
Добавлено через 10 минут


Копирование методом TurboPascal
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
type
  {Для индикации процесса копирования}
  TCallBack = procedure (Position, Size: Longint);
 
procedure FastFileCopy(const InfileName, OutFileName: string;
          CallBack: TCallBack);
const
  BufSize = 3*4*4096; { Размер буфера 48Kbytes }
type
  PBuffer = ^TBuffer;
  TBuffer = array [1..BufSize] of Byte;
var
  Size : integer;
  Buffer : PBuffer;
  infile, outfile : file;
  SizeDone, SizeFile: Longint;
begin
  if (InFileName <> OutFileName) then
  begin
    buffer := nil;
    AssignFile(infile, InFileName);
    System.Reset(infile, 1);
    try
      SizeFile := FileSize(infile);
      AssignFile(outfile, OutFileName);
      System.Rewrite(outfile, 1);
      try
        SizeDone := 0; New(Buffer);
        repeat
          BlockRead(infile, Buffer^, BufSize, Size);
          Inc(SizeDone, Size);
          CallBack(SizeDone, SizeFile);
          BlockWrite(outfile,Buffer^, Size)
        until
          Size < BufSize;
        FileSetDate(TFileRec(outfile).Handle,
        FileGetDate(TFileRec(infile).Handle));
      finally
        if Buffer <> nil then
          Dispose(Buffer);
        System.close(outfile)
      end;
    finally
      System.close(infile);
    end;
  end
  else
    raise EInOutError.Create('File cannot be copied into itself');
end;
Копирование методом потока

Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
procedure FileCopy(const SourceFileName, TargetFileName: string);
var
  S, T : TFileStream;
begin
  S := TFileStream.Create(sourcefilename, fmOpenRead );
  try
    T := TFileStream.Create(targetfilename, fmOpenWrite or fmCreate);
    try
      T.CopyFrom(S, S.Size ) ;
      FileSetDate(T.Handle, FileGetDate(S.Handle));
    finally
      T.Free;
    end;
  finally
    S.Free;
  end;
end;
Копирование методом LZExpand

Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
uses
  LZExpand;
 
procedure CopyFile(FromFileName, ToFileName : string);
var
  FromFile, ToFile: file;
begin
  AssignFile(FromFile, FromFileName);
  AssignFile(ToFile, ToFileName);
  Reset(FromFile);
  try
    Rewrite(ToFile);
    try
      if LZCopy(TFileRec(FromFile).Handle, TFileRec(ToFile).Handle)<0 then
        raise Exception.Create('Error using LZCopy')
    finally
      CloseFile(ToFile);
    end;
  finally
    CloseFile(FromFile);
  end;
end;
Копирование методами Windows

Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
uses
  ShellApi;
 
function WindowsCopyFile(FromFile, ToDir : string) : boolean;
var
  F: TShFileOpStruct;
begin
  F.Wnd := 0; F.wFunc := FO_COPY;
  FromFile:=FromFile+#0; F.pFrom:=pchar(FromFile);
  ToDir:=ToDir+#0; F.pTo:=pchar(ToDir);
  F.fFlags := FOF_ALLOWUNDO or FOF_NOCONFIRMATION;
  result:=ShFileOperation(F) = 0;
end;
 
// пример копирования
procedure TForm1.Button1Click(Sender: TObject);
begin
  if not WindowsCopyFile('C:\text\filename.txt', GetCurrentDir) then
    ShowMessage('Copy Failed');
end;
а есть более простой вариант?
0
54 / 42 / 7
Регистрация: 08.04.2011
Сообщений: 227
09.09.2011, 22:55
Мне кажется, что будет полезнее, если будет можно массово менять расширения файлов.
0
 Аватар для GreenPanda
178 / 29 / 3
Регистрация: 29.08.2010
Сообщений: 228
10.09.2011, 00:01  [ТС]
Цитата Сообщение от FanAs Посмотреть сообщение
Мне кажется, что будет полезнее, если будет можно массово менять расширения файлов.
ну мне такая вункция не нужна была ^^
вот и не зделал
0
Покинул форум
3189 / 1368 / 109
Регистрация: 29.01.2010
Сообщений: 2,887
10.09.2011, 13:09
Ну вот, такой дизайн намного лучше. Правда, я бы все равно обьединил некоторые обьект вместе, например, расположив их на одном GroupBox'е или обычной панельке. И в выделенной области неплохо было бы навести порядок, а то у Вас там все как-то разбросано не очень красиво:
0
 Аватар для GreenPanda
178 / 29 / 3
Регистрация: 29.08.2010
Сообщений: 228
10.09.2011, 22:44  [ТС]
Цитата Сообщение от NiTan Посмотреть сообщение
Ну вот, такой дизайн намного лучше. Правда, я бы все равно обьединил некоторые обьект вместе, например, расположив их на одном GroupBox'е или обычной панельке. И в выделенной области неплохо было бы навести порядок, а то у Вас там все как-то разбросано не очень красиво:
Вложение 95115
ну ладно расставлю все по Groupboxам
а какое у вас мнение насчет полезности самой програмы ??
0
Эксперт .NET
 Аватар для Casper-SC
4434 / 2094 / 404
Регистрация: 27.03.2010
Сообщений: 5,657
Записей в блоге: 1
11.09.2011, 09:30
Пока не пригождалась. Так что насчёт полезности ничего не могу сказать. Вот по твоему в каких ситуациях может быть полезна?
0
 Аватар для anonimus
2184 / 1255 / 143
Регистрация: 28.04.2010
Сообщений: 4,592
11.09.2011, 20:53
а почему интерфейс на английском? В России живем как-никак
0
Покинул форум
3189 / 1368 / 109
Регистрация: 29.01.2010
Сообщений: 2,887
11.09.2011, 20:58
Потому что:
Цитата Сообщение от mischka Посмотреть сообщение
у моего делфи проблемы с руским
ну а на англиском понятно для всех ))
Добавлено через 50 секунд
Цитата Сообщение от mischka Посмотреть сообщение
а какое у вас мнение насчет полезности самой програмы ??
Пока не скачивал, смотрю по скриншотам.
0
Добрый самаритянин
 Аватар для John_Pa9JIbHuK
1107 / 622 / 139
Регистрация: 31.03.2009
Сообщений: 2,567
11.09.2011, 21:21
Первая версия уж больно радужная(не в том смысле что вы подумали, а в том что блЫн все цвета радуги), версия для детей, чтобы они не пугались при сортировке файлов
0
Эксперт .NET
 Аватар для Casper-SC
4434 / 2094 / 404
Регистрация: 27.03.2010
Сообщений: 5,657
Записей в блоге: 1
11.09.2011, 23:57
Цитата Сообщение от NiTan Посмотреть сообщение
у моего делфи проблемы с руским
ну а на англиском понятно для всех ))
Может эта проблема как-то решается?
0
 Аватар для GreenPanda
178 / 29 / 3
Регистрация: 29.08.2010
Сообщений: 228
12.09.2011, 02:33  [ТС]
Цитата Сообщение от John_Pa9JIbHuK Посмотреть сообщение
Первая версия уж больно радужная(не в том смысле что вы подумали, а в том что блЫн все цвета радуги), версия для детей, чтобы они не пугались при сортировке файлов
^^
ну вот переделал на более серёзный дезайн

Добавлено через 1 минуту
Цитата Сообщение от Casper-SC Посмотреть сообщение
Может эта проблема как-то решается?
не знаю надо будет в инете поискать.
но я наверно добавлю изменение языка ini файлом

Добавлено через 2 минуты
Цитата Сообщение от anonimus Посмотреть сообщение
а почему интерфейс на английском? В России живем как-никак
ну вы в России живете а я в германии
0
 Аватар для EvilVoodoo
259 / 94 / 24
Регистрация: 18.04.2011
Сообщений: 719
Записей в блоге: 1
12.09.2011, 06:27
Цитата Сообщение от mischka Посмотреть сообщение
нет она закинет вам все ридми 1 в папку к примеру ридми потом вы можете выбрать все project1.* и кинуть их в проект 1
Плохо. В такой программе стоит сделать выбор по маске. Иначе обычные файловые менеджеры превосходят ее по функциональности даже в той области, на которую программа и расчитана.
Цитата Сообщение от mischka Посмотреть сообщение
а есть более простой вариант?
Там итак все просто.
0
Эксперт .NET
 Аватар для Casper-SC
4434 / 2094 / 404
Регистрация: 27.03.2010
Сообщений: 5,657
Записей в блоге: 1
12.09.2011, 07:13
Цитата Сообщение от mischka Посмотреть сообщение
ну вы в России живете а я в германии
Ну это... Общаемся то на русском сайте.
0
 Аватар для GreenPanda
178 / 29 / 3
Регистрация: 29.08.2010
Сообщений: 228
12.09.2011, 12:02  [ТС]
Цитата Сообщение от Casper-SC Посмотреть сообщение
Ну это... Общаемся то на русском сайте.
ну ето да
0
Добрый самаритянин
 Аватар для John_Pa9JIbHuK
1107 / 622 / 139
Регистрация: 31.03.2009
Сообщений: 2,567
12.09.2011, 14:30
Сделай что-бы расширения можно было добавлять самому + назвать папки при сортировке для того или иному расширению самому.
0
 Аватар для GreenPanda
178 / 29 / 3
Регистрация: 29.08.2010
Сообщений: 228
12.09.2011, 15:32  [ТС]
Цитата Сообщение от John_Pa9JIbHuK Посмотреть сообщение
Сделай что-бы расширения можно было добавлять самому + назвать папки при сортировке для того или иному расширению самому.
просто когда я создавал её я о таких вещях не думал так как создавал для себя.
ну буду дома попробую сделать

Добавлено через 1 минуту
Цитата Сообщение от EvilVoodoo Посмотреть сообщение
нет она закинет вам все ридми 1 в папку к примеру ридми потом вы можете выбрать все project1.* и кинуть их в проект 1
Плохо. В такой программе стоит сделать выбор по маске. Иначе обычные файловые менеджеры превосходят ее по функциональности даже в той области, на которую программа и расчитана.
а как зделать выбор по маске ?
я не знаю
0
Заблокирован
12.09.2011, 19:36
Честно, программа полный отстой...
Такую хрень может любой новичок сделать минут, этак минут за 30 максимум!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
12.09.2011, 19:36

Батник для сортировки файлов по папкамВсем привет!
Есть проект, структура которого выглядит примерно так (школу и учеников придумал, чтоб задача была понятнее): -ПРОЕКТ ---ШКОЛА ...

Поиск компонента для реализации сортировки файлов
В Builder есть такой элемент, как, допустим, в Windows в папке можно выбрать по чём сортировать и при нажатии меняется по возрастанию или...

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

Составить блок – схемы для шейкер- сортировки и сортировки Шелла
Доброго времени суток, очень нужна ваша помощь в решении данной проблемы, буду бесконечно благодарен. Составить блок – схемы для шейкер-...

Хранимая процедура сортировки числового поля для сортировки по алфавиту
В таблице есть поле Name , в котором, собственно, и хранятся типы товаров, и есть поле Ordinal c уникальными значениями типа int Name ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Новые блоги и статьи
Сам себя обучал rest api
anaschu 02.07.2026
Педагогический лайфхак: Почему чистый REST API для ученика намного круче, чем готовые библиотеки Когда мы отказались от капризного JAR-файла AnyLogic и переписали код на стандартный HttpClient,. . .
rest api anylogic - выполнение модели на своём русском сайте
anaschu 02.07.2026
Как подружиться с AnyLogic Cloud API, победить провайдеров и развернуться Java-бэкенд в Docker на бесплатном хостинге: Двухдневный лог борьбы Всем привет! Хочу поделиться свежим (и довольно. . .
Где деньги лежат
kumehtar 02.07.2026
Это - японская подводная лодка I-52 (тип C2, кодовое имя Momi) вышла из Японии в марте 1944 года с миссией в оккупированную немцами Францию (Лорьян). Это была одна из «Янаги»-миссий по обмену. . .
Krabik для WoW 3.3.5a, многоязычный
AmbA 02.07.2026
Допилил бота, думаю что окончательно. Изменения: - добавлена многоязычность - добавлено снятие скриншотов - добавлено поддержание бафов хождения по воде (для жреца, дк и шамана) - и так, по. . .
Алиса нашла кучу ошибок компиляции и запуска в проекте, который без проблем компилировался и запускался)))
anaschu 30.06.2026
Я пока посмеюся, но завтра проверю. А вообще интерсно. Дал алисе файл, в котором точно нет ошибок компиляции и запуска, и попросил их найти. Нашла кучу))) Критические ошибки, мешающие компиляции и. . .
сукцессия 16. Общий обзор, в основном что бы другие ии поняли
anaschu 29.06.2026
# Передаточный документ: модель микоризной сукцессии (для нового чата) Этот документ предназначен для того, чтобы новый чат Claude мог продолжить работу без необходимости заново разбираться в. . .
сукцессия 15 неявная схема
anaschu 29.06.2026
Алиса Калибровка параметров симбиотической модели: технический обзор Содержание: Введение Постановка проблемы Технические аспекты реализации Процесс внедрения изменений
сукцессия 14. Обновленная схема модели
anaschu 28.06.2026
ГЛОБАЛЬНАЯ ОПИСАТЕЛЬНАЯ СПЕЦИФИКАЦИЯ ЭКОСИСТЕМНОЙ МОДЕЛИ «SOIL CHEMISTRY & MYCORRHIZA 2. 0» https:/ / ibb. co/ NnkGpfMd Представленная интегрированная схема описывает непрерывную нелинейную. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru