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

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

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

Запись из массива а файл - C++

18.12.2011, 12:19. Просмотров 795. Ответов 3
Метки нет (Все метки)

Добый день. Задача такая: Из файла в массив записать содержащийся в нём текст вместе с пробелами, а затем в другой файл из этого массива записать получившееся содержимое.Порылся в гугле и получился такой код
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
char a[100];
int i=0;        
ifstream f;
f.open("D:\\test.txt");
while(!f.eof())
{
  f.get(a[i]);
  i++;
}
f.close();
ofstream f2("D:\\zx.txt");          
f2<<a;      
f2.close();
Проблема в том, что в файле куда записывается массив, помимо его содержимого, появляются различные каракули. Как исправить?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.12.2011, 12:19
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Запись из массива а файл (C++):

Запись массива в файл - C++
Есть функция, записывающая данные в массив void umnogenie(char a, int &amp;n, char b, int m) { char c; int i,j,l,o; ...

Запись массива в файл. - C++
Ребят, помогите. Завтра курсач сдавать. Есть массив структур. Как его в файл записать? Кидаю весь файл, не ругайтесь. //...

Запись массива в файл - C++
Здравствуйте. Помогите найти ошибку в программе. С клавиатуры вводится предложение, программа считает сколько слов начинается с одинакового...

Запись массива в файл - C++
Есть класс class Figure { protected: Figure() { penColor = Form1-&gt;ColorBox1-&gt;Selected;...

запись массива в файл - C++
Имеется структура в массиве. когда ввожу данные например: 2,3,4 7,8,5 то получаю 2 3 4 0 0 0 0 0 0 7 8 5 Как...

Запись двумерного массива в файл - C++
В общем нужно записать двумерный массив в фаил, но что то ни как не получается. //magicQuad.h #ifndef MAGICQUAD_H #define...

3
yekka
386 / 150 / 8
Регистрация: 12.05.2011
Сообщений: 450
18.12.2011, 12:34 #2
у тебя строка a оказывается нетерминированной. попробуй
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
char a[100];
int i=0;                
ifstream f;
f.open("D:\\test.txt");
while(!f.eof())
{
  f.get(a[i]);
  i++;
}
a[i] = '\0';
f.close();
ofstream f2("D:\\zx.txt");              
f2<<a;          
f2.close();
1
xKORESHx
0 / 0 / 0
Регистрация: 23.09.2011
Сообщений: 22
18.12.2011, 12:42  [ТС] #3
Спасибо большое!!Помогло)
0
yekka
386 / 150 / 8
Регистрация: 12.05.2011
Сообщений: 450
18.12.2011, 12:44 #4
но с этим кодом будет выход за пределы буфера и segmentation fault, если в исходном файле будет содержаться более 99 символов.
так что нужно еще добавить счетчик символов и прекращать копирование, если буфер весь заполнен
0
18.12.2011, 12:44
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.12.2011, 12:44
Привет! Вот еще темы с ответами:

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

запись массива структур в файл - C++
Запись массива структур в файл так, что бы потом можно было считывать, удалять ненужные записи, добавлять, сортировать, поиск. Я пробовал...

Запись массива символов в файл - C++
Здравствуйте! А кто знает как записать массив символов, имеющий пробелы, в файл, а потом его считать и вывести на экран? Подробнее: -...

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


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

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