– alle Daten werden zu chars
– In: bedeutet von aussen zur CPU.
– out: bedeutet von OS nach aussen
————————————————————————————-
istream
char Daten werden übergeben
ostream
sendet chars an eine Ort (file, konsole, speicher, ..)
ifstream [Daten in File ablegen]
– Datei als String mitgeben
ifstream stream_a {„input.txt“}
– Inhalt wortweise in String ablegen string temp
– Strings in Vektor speichern vector <string> input
while (stream_a >> temp) { // fill vector input.push_back(temp); }
ofstream [ lesen von einem file (wird als stream gemacht)]
cout << "Name of output file" string name_outputfile; cin >> name_outputfile; ostream stream_1 {name_outputfile}; if (! stream_1) error("Konnte nicht eingelesen werden.");
strukturiert einlesen
struct Inputdata { int hour; double temperature; };
cout << "Please enter input file name: "; string name_inputfile; cin >> name_inputfile; ifstream ist {name_inputfile}; if (!ist) throw ios_base::failure("can't open input file "+name_inputfile);
vector<Inputdata> temps; // structured vector int hour; double temperature; // read structured in while (ist >> hour >> temperature) { if (hour < 0 || 23 <hour) throw range_error("hour out of range"); // fill vector temps.push_back(Inputdata{hour,temperature}); }
strucktruriert ausgeben
// set brackets for clearer structure for (int i=0; i<input.size(); ++i) ost << '(' << input[i].hour << ',' << input[i].temperature << ")\n";
…