Форум программистов, компьютерный форум CyberForum.ru

Файл - C++

Восстановить пароль Регистрация
 
lera8
 Аватар для lera8
630 / 213 / 26
Регистрация: 03.11.2009
Сообщений: 488
12.01.2010, 19:46     Файл #1
Здравствуйте!Помогите мне решить,это последняя задача осталась(а то мне оценку на экзамене снизят)
наверно, её надо реализовать в одной функции main...на языке Си
В каждой строке файла содержится имя файла, находящегося в текущем каталоге.
Переписать файл, удалив из него имена не существующих файлов, а для каждого
существующего файла записать его размер в байтах.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.01.2010, 19:46     Файл
Посмотрите здесь:

Дан файл целых чисел. Создать новый файл, содержащий те же элементы, что и исходный файл, но в обратном порядке C++
C++ Дан файл. Записать в другой файл строки, которые являются палиндромами.
C++ Дан символьный файл f. Записать в файл g элементы файла f в обратном порядке
C++ Скопировать текстовый файл в новый файл, заменив в каждой строке слова «ok» на «*»
Дан символьный файл f. Записать в файл g компоненты файла f в обратном порядке C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Day
 Аватар для Day
1149 / 954 / 57
Регистрация: 29.10.2009
Сообщений: 1,384
12.01.2010, 19:50     Файл #2
Есть такая функция - findfirst
lera8
 Аватар для lera8
630 / 213 / 26
Регистрация: 03.11.2009
Сообщений: 488
12.01.2010, 20:47  [ТС]     Файл #3
Я не понимаю эти файлы, помогите решить
Gae4ka_1
3 / 3 / 0
Регистрация: 19.10.2009
Сообщений: 28
12.01.2010, 20:51     Файл #4
1)Определи масив например char **name если инициализировать статически то так name[30][30], если понадобится, поставь побольше размеры!
2)считай с файла инфо в какой-то масив name ф-ция fgets()
3)разбей на слова ... таким образом
0 1 2 3 4 5
0 n a m e
1 s s h
. . .
у тебя получится что имя каждого нового файла находится в новой строке
4) ф-цией fopen() в цикле проверять или существует файл
5) если нет, удаляй
lera8
 Аватар для lera8
630 / 213 / 26
Регистрация: 03.11.2009
Сообщений: 488
13.01.2010, 14:58  [ТС]     Файл #5
А не могли бы вы мне помочь кодом этой программы
kazak
 Аватар для kazak
3029 / 2350 / 155
Регистрация: 11.03.2009
Сообщений: 5,401
13.01.2010, 16:32     Файл #6
Ну что-то вроде этого
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
34
35
36
37
38
39
#include <stdio.h>
#include <string.h>
#include <alloc.h>
 
int main(int argc, char* argv[])
{
   FILE *fin, *fsearch;
   unsigned long file_size;
   char *strbuf, *file_name;
 
   fin = fopen("input.txt", "r+");
   if (!fin)
   {
      printf("File error\n");
      return 1;
   }
 
   fseek(fin, 0L, SEEK_END);
   file_size = ftell(fin);
   fseek(fin, 0L, SEEK_SET);
   strbuf = (char*)malloc(file_size);
   fread(strbuf, sizeof(char), file_size, fin);
   freopen("input.txt", "w", fin);
   file_name = strtok(strbuf, "\n");
   while (file_name)
   {
      fsearch = fopen(file_name, "r");
      if (fsearch)
      {
         fseek(fsearch, 0L, SEEK_END);
         file_size = ftell(fsearch);
         fprintf(fin, "%s - %i bytes\n", file_name, file_size);
         fclose(fsearch);
      }
      file_name = strtok(NULL, "\n");
   }
   fclose(fin);
   return 0;
}
Yandex
Объявления
13.01.2010, 16:32     Файл
Ответ Создать тему
Опции темы

Текущее время: 20:05. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru