Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.82/11: Рейтинг темы: голосов - 11, средняя оценка - 4.82
0 / 0 / 0
Регистрация: 17.03.2013
Сообщений: 56

Массовое переименование файлов

24.05.2014, 02:34. Показов 2334. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте!
Подскажите пожалуйста, в чем ошибка?


C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
//---------------------------------------------------------------------------
int main(int argc, char* argv[])
{
  SetConsoleCP(1251);
  SetConsoleOutputCP(1251);
 
  int k, i=0;
  TSearchRec F;
  AnsiString str;
 
  k = FindFirst("C:\\dd\\*.*", faDirectory, F);
  while (k==0){
    str = IntToStr(i)+".jpg";
    RenameFile(F.Name.c_str(), str);
    cout << F.Name.c_str() << endl;
    k = FindNext(F);
    i++;
  }
 
  getchar();
  return 0;
}           
//---------------------------------------------------------------------------
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
24.05.2014, 02:34
Ответы с готовыми решениями:

Массовое переименование файлов
Здравствуйте, подскажите пожалуйста как в определенной папке (используя DirectoryListBox и FileListBox) удалить из названия файлов...

Загрузка имен файлов в StringGrid и переименование после редактирования
Добрый день всем! Программа загружает имена всех файлов с расширением pdf из каталога в столбец компонента StringGrid. TSearchRec...

Массовое переименование файлов
На локальном диске имеется большое количество файлов с именами 1.txt 1a.txt 57e.txt и т.д. Мне их нужно переименовать все разом. Также...

5
Модератор
 Аватар для D1973
9929 / 6467 / 2457
Регистрация: 21.01.2014
Сообщений: 27,423
Записей в блоге: 3
24.05.2014, 09:43
Цитата Сообщение от FZ@8qQ Посмотреть сообщение
в чем ошибка?
вот в этой строчке...
Цитата Сообщение от FZ@8qQ Посмотреть сообщение
k = FindFirst("C:\\dd\\*.*", faDirectory, F);
Ты пытаешься переименовать все элементы в папке C:\\dd при условии, что все эти элементы - папки (каталоги, директории).
Измени faDirectory на faAnyFile - faDirectory.

Добавлено через 23 минуты
И, кстати, в 19 строке поставь FindClose(F);
0
0 / 0 / 0
Регистрация: 17.03.2013
Сообщений: 56
24.05.2014, 13:03  [ТС]
Исправил. Кое, что поменялось, но толку мало. Результат от первого немного отличается. В скрине 1 как было. в скрине 2 как стало.

C++
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
#include <vcl.h>
#pragma hdrstop
#include <windows.h>
#include <stdio.h>
#include <fcntl.h>
#include <io.h>
#include <iostream>
#pragma argsused
using namespace std;
 
//---------------------------------------------------------------------------
int main(int argc, char* argv[])
{
  SetConsoleCP(1251);
  SetConsoleOutputCP(1251);
 
  int k, i=0;
  TSearchRec F;
  AnsiString str;
 
  k = FindFirst("C:\\dd\\*.*", faAnyFile - faDirectory, F);
  while (k==0){
    str = IntToStr(i)+".jpg";
    RenameFile(F.Name.c_str(), str);
    cout << F.Name.c_str() << endl;
    k = FindNext(F);
    i++;
  }
  FindClose(F);
  getchar();
  return 0;
}
//---------------------------------------------------------------------------
0
0 / 0 / 0
Регистрация: 17.03.2013
Сообщений: 56
24.05.2014, 13:08  [ТС]
Скрины
Миниатюры
Массовое переименование файлов   Массовое переименование файлов  
0
Модератор
 Аватар для D1973
9929 / 6467 / 2457
Регистрация: 21.01.2014
Сообщений: 27,423
Записей в блоге: 3
24.05.2014, 14:51
Лучший ответ Сообщение было отмечено FZ@8qQ как решение

Решение

Ну вот так все переименовывает
C++
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
#pragma hdrstop
#pragma argsused
 
#include <stdio.h>
#include <vcl.h>
#include <windows.h>
#include <iostream>
 
using namespace std;
 
int _tmain(int argc, _TCHAR* argv[])
{
   TSearchRec SR;
   String s;
   int i = 0;
   ChDir("c:\\111");
   if (FindFirst("*.*", faAnyFile, SR) == 0)
    do
      {
        s = IntToStr(i) + ".jpg";
        RenameFile(SR.Name,s);
        i++;
      }
    while (FindNext(SR) == 0);
    FindClose(SR);
    ChDir(ExtractFilePath(Application->ExeName));
    system("pause");
    return 0;
}
1
0 / 0 / 0
Регистрация: 17.03.2013
Сообщений: 56
24.05.2014, 21:18  [ТС]
Спасибо! Вы могли бы сказать, почему мой кол не работал?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
24.05.2014, 21:18
Помогаю со студенческими работами здесь

Массовое переименование файлов
Доброго времени суток.Не могу решить задачу. Суть в следующем: есть набор файлов 1.htm, 2.htm, 3.htm,....N.htm. Их нужно переименовать c...

Массовое переименование файлов
Имеется много файлов музыки. Еще во времена скачивания музыки с ВК, она скачивалась с такими именами, но метаданные сохранились. Я бы...

Массовое переименование файлов
Подскажите пожалуйста возможно ли написать код для массового переименование файлов следующим образом: Пройтись по всем файлам папки и...

Массовое переименование файлов
Ребята помогите, проблема с переименовыванием файлов. Если в указанную папку кладутся например 2 файла, то цикл почему-то идет 3 раза. В...

Массовое переименование файлов
Доброго всем дня, подскажите пожалуйста как решить данный вопрос. Имеется raid раздел размером 6тб, на нем заполнено файлами и папками...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru