PDA

Показать полную графическую версию : [решено] Запись вводимых данных в файл


mj-333
27-08-2012, 00:22
человек беспорядочно вводит цифры и буквы (ghjh546vfgh546f5l2)
как записать все что он вводит в текстовый файл?

ferget
27-08-2012, 00:37
примерно так

#include <iostream>
#include <fstream>
#include <string>
using namespace std;

int main(void)
{
cout <<"Введите строку :"<< endl;
string line;
getline(cin,line)

ofstream file_out;

file_out.open ("FILENAME",std::ios::trunc | std::ios::binary);
file_out.write(line.c_str(), line.size());
file_out.clear();

return 0;
}

mj-333
27-08-2012, 01:04
Спасибо огромное!

mj-333
27-08-2012, 21:57
еще вопрос по коду выше:
получается если я до выполнения кода записывающего в файл УЖЕ ЧТО ТО вводил, то оно просто записывает, то что я вводил раньше, а не просит новый ввод.
можно этого избежать?

ferget
28-08-2012, 02:14
Не понятно, объясните подробнее

XPEHOMETP
28-08-2012, 14:12
Похоже, перезапись на введенное сновья. А человек хочет сохранить еще и старое. Как бы ему в этом помочь? Я просто не копенгаген в этом языке.

mj-333
28-08-2012, 14:26
Нет, смотрите до выполнения кода выше, я спрашиваю вывести ли помощь (да=1, нет=0) он вводит 1 и потом программа просто записывает 1-у в FILENAME!
А мне нужно что бы именно эта единица (ну или ноль) не записывались. Поможете?

ferget
28-08-2012, 14:40
надо очистить входной поток


cin.clear();
cin.sync();

cout <<"Введите строку :"<< endl;
string line;
getline(cin,line)

mj-333
28-08-2012, 22:17
еще раз спасибо!




© OSzone.net 2001-2012