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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
politex
0 / 0 / 0
Регистрация: 28.03.2011
Сообщений: 6
#1

"C" работа с файлами - C++

28.03.2011, 15:07. Просмотров 838. Ответов 3
Метки нет (Все метки)

нужен совет.
либо готов оплатить готовую работу.

суть заключается в следующем.

необходимо скопировать один файл. копирование производится через переменную типа char с одного компьютера на другой. тот с которого производится копирование - написан на C. Программа которая принимает файл - на VB 6.0

трудностей с копированием текстового файла не возникает.
вот пример данной программы.
Код
//посимвольное чтение из файла
#include <stdio.h>
#include <stdlib.h>
int main()
{
   FILE *fp;
   char ch;
 

char f1[8];
printf("Ishodnii fail dla pereda4i \n");
gets(f1);


   if((fp=fopen(f1, "r")) == NULL) 
   {
      printf("Невозможно открыть файл. \n");
      exit(1);
   }

   while((ch=fgetc(fp)) != EOF) {
      printf("%c", ch);
	  
}
   fclose(fp);

return 0;
}
трудности возникают при попытки передачи EXE файлов. Открытие с дескриптором rb тоже не помогают.

посоветовать кто чего может?
-----------
и как в данном примере реализовать подсчет контрольной суммы?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.03.2011, 15:07     "C" работа с файлами
Посмотрите здесь:

C++ Не получается "работа с файлами"
C++ "Работа с файлами"
C++ Обход "End Of File". Работа с файлами
C++ Работа с файлами и структурами. Создать "меню"
Работа с загаловочными файлами ("Undefined reference to") C++
Работа с файлами и записями. "Учет проданных товаров" C++
C++ Ошибка "Попытка чтения в запрещенную память" при работе с файлами
Работа со временем, задаваемым в формате "час, минута, секунда" C++
Работа с файлами. Структура "Поезд" C++
C++ Работа с классами С++. error C2660: "Функция не принимает 2 аргумента"
C++ Курсовая работа "Разработка конвертации мер массы и веса"
C++ Работа с линейными списками. Ошибка "getline: идентификатор не найден"

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
LaГushan
124 / 124 / 14
Регистрация: 12.03.2011
Сообщений: 227
28.03.2011, 15:45     "C" работа с файлами #2
Вам получается надо прочитать .exe файл?
Тогда "rb" оставляйте, а
C
1
char ch;
замените на
C
1
unsigned char ch;
politex
0 / 0 / 0
Регистрация: 28.03.2011
Сообщений: 6
28.03.2011, 17:03  [ТС]     "C" работа с файлами #3
спасибо помогло.
так же для бинарного файла пришлось заменить EOF на sizeof

---------
к сожаления только заметил что при полном прочтении текстового файла, программа не завершается, а продолжает висеть. не видит конец текстового файла.

while((ch=fgetc(fp)) != EOF)

пробывал вместо EOF и sizeof, feof ничего не помогло.

какие еще есть способы?
easybudda
Эксперт С++
9438 / 5461 / 925
Регистрация: 25.07.2009
Сообщений: 10,481
28.03.2011, 17:37     "C" работа с файлами #4
Цитата Сообщение от politex Посмотреть сообщение
while((ch=fgetc(fp)) != EOF)
C
1
2
while ( fread(&ch, 1, 1, fp) == 1 )
  /*...*/
Но вообще-то за такое надо от компа отлучать. Читать/писать данные в двоичные файлы лучше всё-таки блоками, кратными блоку на диске, а то медленно работать будет...
Yandex
Объявления
28.03.2011, 17:37     "C" работа с файлами
Ответ Создать тему
Опции темы

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