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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 18, средняя оценка - 4.61
Hellphone
0 / 0 / 0
Регистрация: 18.03.2011
Сообщений: 29
#1

Копирование данных из файла в файл - C++

02.06.2011, 21:01. Просмотров 2465. Ответов 4
Метки нет (Все метки)

Здравствуйте!

Нужно организовать копирование данных из одного файла в другой в бинарном режиме. При выполнении программы в выходной файл вместо нужного текста копируются неизвестные символы. В чём может быть ошибка?

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
// Копирование файла в бинарном режиме
#include <iostream>
#include <fstream>
#include <cstdlib>
#include <string>
 
using namespace std;
int main ()
{
    string S;
    char mas[50];
    ifstream input;
 
    input.open("C:\\File.txt", ios_base::binary);
    if (!input.is_open()){
    exit(EXIT_FAILURE);
    }
 
    ofstream output;
 
    output.open("C:\\File_01.txt", ios_base::binary);
 
    while (getline(input, S))
        input.get(mas, 50);
 
    output.write(mas, 50);
 
    input.close();
    output.close();
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.06.2011, 21:01
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Копирование данных из файла в файл (C++):

Копирование слов из файла в файл - C++
Здравствуйте! Не могу реализовать копирование слов из файла в файл. Нужно при этом задать числа: с какого по порядку слова копировать...

Копирование данных из файлов в файл - C++
Привет, ребята! :) Мне необходимо написать программу, которая открывает потоки для чтения для двух файлов, и поток для записи - для одного....

Копирование данных из файла в отображение. STL - C++
Суть такова. Написал программку. Предполагается, что работает она так: открывает текстовый файл, весь этот файл заливает в строку string,...

ввод структурированных данных в файл и вывод данных из этого файла на экран (сделать хра-нилище данных в файле). - C++
Здравствуйте) помогите написать программу, осуществляющую ввод структурированных данных в файл и вывод данных из этого файла на экран...

Напишите функции записи данных в файл, чтения данных из файла - C++
Файл dаte.in содержит четырех значное число на каждой строке. Напишите функции записи данных в файл, чтения данных из файла. Напишите...

Файл: Изменить программу таким образом чтобы ввод исходных данных осуществлялся из файла, результат также должен выводиться в файл - C++
Помогите разобраться с этой проблемой, исходную задачу я написал, а вот как считать из файла не получается. Необходимо изменить программу...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
odip
Эксперт С++
7157 / 3297 / 59
Регистрация: 17.06.2009
Сообщений: 14,164
03.06.2011, 07:45 #2
Файл бинарный ?
А ты его с помощью getline() читаешь - который читает по-строчно, то есть подразумевается текстовый формат файла.
Hellphone
0 / 0 / 0
Регистрация: 18.03.2011
Сообщений: 29
03.06.2011, 15:55  [ТС] #3
Хм... А как же тогда быть?
igorrr37
1646 / 1274 / 133
Регистрация: 21.12.2010
Сообщений: 1,932
Записей в блоге: 7
03.06.2011, 18:36 #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
#include <fstream>
#include <algorithm>
#include <iterator>
 
int main(){
    std::ifstream ifs("1.txt", std::ios::binary);
    if(!ifs){std::cerr<<"File not found\n"; return -1;}
    std::ofstream ofs("2.txt", std::ios::binary);
    std::copy((std::istreambuf_iterator<char>(ifs)), std::istreambuf_iterator<char>(), std::ostreambuf_iterator<char>(ofs));
    ifs.close();
    ofs.close();
    return 0;
}
Hellphone
0 / 0 / 0
Регистрация: 18.03.2011
Сообщений: 29
03.06.2011, 19:38  [ТС] #5
Спасибо! Будьте добры, объясните, пожалуйста, принцип работы этой программы и, в частности, зачем нужны заголовочные файлы <algorithm> и <iterator>.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.06.2011, 19:38
Привет! Вот еще темы с ответами:

Считывание данных из файла и запись результатов в файл - C++
Здравствуйте. Необходимо переделать этот код: #include &lt;iostream&gt; using namespace std; /////////////////////////////////...

Создание файла для записи и чтения, запись в файл данных - C++
Написать простейшую программу, которая для своей работы использует системные вызовы функций и предоставляет следующие...

Ввод структуры в текстовый файл столбиком и вывод данных из файла в структуру - C++
Имеется база данных в виде структуры, которая будет постепенно дописываться приблизительно до 1000 элементов. В каждом элементе структуры...

После удаления (перезаписи) данных из бинарного файла, файл всё равно существует, несмотря на то, что он пуст - C++
после удаления(перезаписи) данных из бинарного файла, файл всё равно существует, как сделать так чтобы и файл удалялся если он пустой?


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
03.06.2011, 19:38
Ответ Создать тему
Опции темы

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