Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.02.2012, 06:24   #1
neomax38
Пользователь
 
Регистрация: 17.09.2010
Сообщений: 72
По умолчанию Работа с каталогами (С, Linux)

Здравствуйте.
Задание:
Переместить файлы с именем на заданную букву из заданного каталога в текущий.
На СИ не писал вообще ничего даже Hello world.
Нашел похожее, но не рабочее.
Может кто разберется в коде
Код:
#include <stdio.h>
#include <dirent.h>

int main(int argc, char* argv[])
{
   if (argc != 3)
   {
      fprintf(stdout, "Usage: %s PATH CHAR", *argv);
      return 0;
   }

   char* path = argv[1];
   char ch = *argv[2];
   
   DIR* dir = opendir(path);
   
   if (dir)
   {
      struct dirent* ent;
      
      while ((ent = readdir(dir)) != NULL)
      {
         if (*ent->d_name == ch)
         {
            char file[NAME_MAX];
            sprintf(file, "%s/%s", path, ent->d_name);
            
            if (rename(file, ent->d_name) != 0)
            {
               fprintf(stderr, "Error: can not move the file '%s'\n", ent->d_name);
            }
         }
      }
   }
   else
   {
      fprintf(stderr, "Error: dir '%s' not found", path);
   }

   return 0;
}

cpfiles <path> <char>
neomax38 вне форума Ответить с цитированием
Старый 26.02.2012, 11:23   #2
alexey2
Пользователь
 
Регистрация: 27.01.2012
Сообщений: 37
По умолчанию

замени
Код:
sprintf(file, "%s/%s", path, ent->d_name);
на
Код:
sprintf(file, "%s/%s\0", path, ent->d_name);
alexey2 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
java работа с каталогами programmm Помощь студентам 0 06.12.2011 20:57
[DOS] Работа с файлами и каталогами: вывод содержимого каталога на экран Zueuk Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 3 12.05.2011 12:59
работа с каталогами *.dat dedyshka SQL, базы данных 0 26.01.2010 12:27
Delphi-работа с файлами,каталогами POPOV Помощь студентам 6 30.11.2007 15:12