//使用文件流写文本文件
#include<iostream>
using namespace std;
#include<string>
#include<fstream>
int main(void)
{
//ofstream outfile;
fstream outfile;
//outfile.open("User.txt");
outfile.open("User.txt", ios::out | ios::trunc);
string name;
int age;
while (1) {
cout << "请输入姓名:[输入Ctrl Z 停止输入]";
cin >> name;
if (cin.eof()) {
break;
}
outfile << name<<"\t";
cout << "请输入年龄:";
cin >> age;
outfile << age << endl;;
}
outfile.close();
return 0;
}
//使用文件流读文本文件
#include<iostream>
using namespace std;
#include<fstream>
#include<string>
//int readFile(void)
int main(void)
{
ifstream infile;
infile.open("User.txt");
string name;
int age;
while (1) {
infile >> name;
if (infile.eof()) {
break;
}
cout << name << "\t";
infile >> age;
cout << age << endl;
}
infile.close();
return 0;
}
//使用文件流写二进制文本文件
#include<iostream>
using namespace std;
#include<string>
#include<fstream>
int main(void) {
string name;
int age;
ofstream outfile;
outfile.open("User.dat",ios::out | ios::trunc | ios::binary);
while (1) {
cout << "请输入姓名:[Ctrl Z退出]";
cin >> name;
if (cin.eof()) {
break;
}
outfile << name << "\t";
cout << "请输入年龄:";
cin >> age;
//outfile << age << endl;
outfile.write((char*)(&age), sizeof(age));
}
outfile.close();
system("pause");
return 0;
}
//使用文件流读二进制文本文件
#include<iostream>
#include<string>
#include<fstream>
using namespace std;
int main(void) {
ifstream infile;
infile.open("User.dat");
string name;
int age;
while (1) {
infile >> name;
if (infile.eof()) {
break;
}
cout << name<<"\t";
char temp;
//二进制读取遇到制表符不会自动跳跃
infile.read((char*)&temp, sizeof(temp));
//infile >> age;错误
infile.read((char*)&age, sizeof(age));
cout << age << endl;
}
infile.close();
system("pause");
return 0;
}