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

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

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

Запись в файл, лишняя строка, не могу понять! - C++

12.02.2013, 22:00. Просмотров 499. Ответов 11
Метки нет (Все метки)

Сломал всю голову, по каким то причинам при вводе данных клавиатуры, они записываются, но 1ая строка пустая, есть подозрение, ЧТО связано с "\n " в первом цикле. Не могу исправить, т.к. потом возникают сложности в выводе данных, да и не красиво как то это!^^
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
#include <iostream>
#include <fstream>
#include <string>
 
using namespace std;
struct abi
{int n;
int i; int k;
 
char s[255];
 
    void name();
 };
char s[255];
void abi::name()
{   
cout<<"\nВведите кол-во абитуриентов ";
cin>>n; 
ofstream out("my2file.txt");
i=0; k=1;
for (i; i<n; i++,k++)
{cout<<"Введите данные студента: ФИО, год рождения, оценки вступительных экзаменов(рус, мат, англ), ср. балл аттестата ";
 _flushall(); cin.getline(s,100);
  out<<" ";
 out<<"\n "<<k<<" "<<s;
}
out.close();
ifstream in("my2file.txt");
    {
        for (i=0; i<(n+1); i++)
        {
           in.getline(s,100);
         cout<<"\n "<<s;
        }
        in.close();
    }
 
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
alsav22
5410 / 4806 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
12.02.2013, 22:20     Запись в файл, лишняя строка, не могу понять! #2
В чём вопрос?
NeonLost
Пес войны
 Аватар для NeonLost
74 / 85 / 3
Регистрация: 23.02.2012
Сообщений: 653
12.02.2013, 22:28     Запись в файл, лишняя строка, не могу понять! #3
зачем тебе \n в начале?..делай ее в конце строки...)
razum777
0 / 0 / 0
Регистрация: 15.12.2009
Сообщений: 46
13.02.2013, 11:13  [ТС]     Запись в файл, лишняя строка, не могу понять! #4
Цитата Сообщение от NeonLost Посмотреть сообщение
зачем тебе \n в начале?..делай ее в конце строки...)
Спасибо, лишняя строка в файле пропала теперь другая проблема, если делать как вы говорите, то получается такие записи:
1dsmfnm, namfans ,mdfn
2asdnfm ,ana,dsmfn a

вначале 2ой строки пробел, как от него избавится?

Добавлено через 8 минут
Спасибо всем, затупил "\n " ставил, а надо было "\n" просто)) теперь все ок
alsav22
5410 / 4806 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
13.02.2013, 11:36     Запись в файл, лишняя строка, не могу понять! #5
Цитата Сообщение от razum777 Посмотреть сообщение
"\n " ставил, а надо было "\n" просто
А лучше просто '\n', тогда таких накладок не будет.
razum777
0 / 0 / 0
Регистрация: 15.12.2009
Сообщений: 46
13.02.2013, 13:00  [ТС]     Запись в файл, лишняя строка, не могу понять! #6
и еще пожалуйста, помогите, теперь нужно удалить определенную строку и вывести на экран.
NeonLost
Пес войны
 Аватар для NeonLost
74 / 85 / 3
Регистрация: 23.02.2012
Сообщений: 653
13.02.2013, 15:14     Запись в файл, лишняя строка, не могу понять! #7
какую строку?
razum777
0 / 0 / 0
Регистрация: 15.12.2009
Сообщений: 46
13.02.2013, 15:48  [ТС]     Запись в файл, лишняя строка, не могу понять! #8
Цитата Сообщение от NeonLost Посмотреть сообщение
какую строку?
В результате выполнения этой программы получается файл, в котором n кол-во строк(в зависимости от кол-ва студентов), нужно удалить № строки заданный с клавиатуры. Help
NeonLost
Пес войны
 Аватар для NeonLost
74 / 85 / 3
Регистрация: 23.02.2012
Сообщений: 653
13.02.2013, 19:57     Запись в файл, лишняя строка, не могу понять! #9
Цитата Сообщение от razum777 Посмотреть сообщение
В результате выполнения этой программы получается файл, в котором n кол-во строк(в зависимости от кол-ва студентов), нужно удалить № строки заданный с клавиатуры. Help
тебе нужно в цикле брать строки, инкрементить счетчик, нужную строку пропустить...потом перезаписать файл...)
razum777
0 / 0 / 0
Регистрация: 15.12.2009
Сообщений: 46
13.02.2013, 20:57  [ТС]     Запись в файл, лишняя строка, не могу понять! #10
Цитата Сообщение от NeonLost Посмотреть сообщение
тебе нужно в цикле брать строки, инкрементить счетчик, нужную строку пропустить...потом перезаписать файл...)
Может хотя бы примерно написать как это выглядит, пожалуйста!
NeonLost
Пес войны
 Аватар для NeonLost
74 / 85 / 3
Регистрация: 23.02.2012
Сообщений: 653
13.02.2013, 21:14     Запись в файл, лишняя строка, не могу понять! #11
Цитата Сообщение от razum777 Посмотреть сообщение
Может хотя бы примерно написать как это выглядит, пожалуйста!
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
string tmpLine;
    string text;
ifstream myfile ("example.txt");
 int N,count=1;
cin>>N;
    if (myfile.is_open())
    {
        while ( myfile.good())
        {
if(N==count) continue;
          getline (myfile,tmpLine);
          text+=tmpLine;
          text+="\n";
count++;
        }
        myfile.close();
    }
в переменной text у тебя будет все кроме строки с введенным номером...)
можешь выводи, сохранять, что хочешь...)

Добавлено через 1 минуту
прада не проверял:-D
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.02.2013, 09:42     Запись в файл, лишняя строка, не могу понять!
Еще ссылки по теме:

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

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

Или воспользуйтесь поиском по форуму:
NeonLost
Пес войны
 Аватар для NeonLost
74 / 85 / 3
Регистрация: 23.02.2012
Сообщений: 653
16.02.2013, 09:42     Запись в файл, лишняя строка, не могу понять! #12
где continue, там тоже count++ нужен...)
Yandex
Объявления
16.02.2013, 09:42     Запись в файл, лишняя строка, не могу понять!
Ответ Создать тему
Опции темы

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