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

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

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

Лишние символы в конце строки, записанной в файл - C++

09.07.2015, 15:34. Просмотров 380. Ответов 3
Метки нет (Все метки)

Записываю текст в бинарный файл, но в файле нет каракуль а этот же текст. И плюс к тексту добавляться левые символы. (смотреть рисунок)
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include
#include 
using namespace std;
void main()
{
char a[305]={"Each individual state has its own sys-tem of public schools."}; 
char d[305];
int x=0; 
x=strlen(a);
fstream out("F:\\scan.txt",ios:: binary|ios::out);
out.write((char*)&a,x*sizeof(char));
out.read((char*)&d,x*sizeof(char));
cout<<d;
out.close();
system("PAUSE");
}
вот что в документе
Each individual state has its own sys-tem of public schools.НННННННННННННННННННННННННННННННННННННННННННННННННННННННННННН
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.07.2015, 15:34
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Лишние символы в конце строки, записанной в файл (C++):

Лишние символы в конце строки при копировании - C++
При копировании данных в строку (std::string) в цикле, на &quot;стыках&quot; появляются лишние символы. Пример: &lt;meta...

Лишние символы при записи в файл - C++
void Add_department::OnBnClickedOk() { char seps = &quot;:&quot;; char *token; char* file_name = &quot;D:\\department.txt&quot;; char...

Tesseract: лишние символы (шум) при записи в файл - C++
Господа, помогите кто знает. #include &lt;fstream&gt; #include &lt;stdio.h&gt; #include &lt;allheaders.h&gt; //lept #include &lt;baseapi.h&gt; //tess ...

Откуда в конце строки появляются дополнительные символы? - C++
#include &quot;stdafx.h&quot; #include &quot;math.h&quot; #include &quot;iostream&quot; #include &quot;string&quot; #include &quot;conio.h&quot; #include &quot;cctype&quot; #include...

При чтение из файла в начало строки добавляются лишние символы - C++
getline какую-то фигню читает,причем если первую строку, то вначале добавляет &quot;яэ&quot; int main() { string way = &quot;Example.txt&quot;; ...

Почему в конце символьной строки появляются разные символы, и что с ними делать? - C++
В строке, содержащей последовательность слов, найти конец предложения, обозначенный символом &quot;точка&quot;. В следующем слове первую строчную...

3
lss
921 / 850 / 281
Регистрация: 10.10.2012
Сообщений: 2,701
09.07.2015, 15:44 #2
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от Pashaa2 Посмотреть сообщение
Записываю текст в бинарный файл, но в файле нет каракуль а этот же текст.
Текст, при любом режиме записи, будет выглядеть, в текстовом редакторе, как текст.
Цитата Сообщение от Pashaa2 Посмотреть сообщение
И плюс к тексту добавляться левые символы. (смотреть рисунок)
Цитата Сообщение от Pashaa2 Посмотреть сообщение
x=strlen(a);
Это количество символов Си-строки без '\0'. Чтобы и '\0' записался - увеличь на единицу.
1
Max Dark
шКодер самоучка
1849 / 1649 / 603
Регистрация: 09.10.2013
Сообщений: 3,676
Записей в блоге: 6
Завершенные тесты: 2
09.07.2015, 15:45 #3
Pashaa2, вы забыли про то, что строки "в стиле Си" заканчиваются символом '\0'.
вот и выводится все подряд до первого нулевого байта.
добавьте после операции чтения
C++
1
d[x] = 0;
и ничего лишнего выводиться не будет
1
lss
921 / 850 / 281
Регистрация: 10.10.2012
Сообщений: 2,701
09.07.2015, 16:08 #4
Pashaa2, как этот код у тебя вообще работает? Файл открыт для бинарной записи, ты им и пишешь, и читаешь (не закрывая и не передвигая курсор). Это что за среда такая?
0
09.07.2015, 16:08
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.07.2015, 16:08
Привет! Вот еще темы с ответами:

Текстовый файл состоит из нескольких строк. Записать во второй файл последние символы из каждой строки первого файла - C++
Текстовый файл состоит из нескольких строк. Записать во второй файл последние символы из каждой строки первого файла. === Помогите,...

Переписать все строки файла F.txt в файл G.txt, удаляя все пробелы в конце каждой строки - C++
помогите как можно быстрей Дан текстовый файл F.txt. Переписать все строки файла F.txt в файл G.txt, удаляя все пробелы в конце каждой...

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

Считывание из файла и сохранение записанной в программе информации в файл - C++
Вот сама задача: Анкета для опроса населения содержит две группы вопросов. Первая группа содержит сведения о респонденте: 1)возраст 2)пол...


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

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

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