微信网站游戏,天津建设工程信息网专家申请题库,长春哪些企业没有网站,最新的网络营销手段为了增加读取的灵活性#xff0c;所以separator和filename都设置为在主函数中获取输入或者在函数中传参的视线方法
举个例子#xff0c;txt文件如下#xff1a;
household;2;true;
首先声明一个读取数据的文件
void read_data_file(const string filename,char se…为了增加读取的灵活性所以separator和filename都设置为在主函数中获取输入或者在函数中传参的视线方法
举个例子txt文件如下
household;2;true;
首先声明一个读取数据的文件
void read_data_file(const string filename,char separator)
seperate指的是间隔符filename是文件名
读取文件代码固定的第一步就是(基本所有读取都可以加这段代码增加了检查文件内容读取的错误。
别忘记加头文件
#include fstream#include sstream
ifstream file(filename);if(!file.isopen){cout Error: Unable to open file for writing.
}
下一步就是if(file.isopen)的内容
固定的定义一个string 为行
string line;
当文件内所在行有内容时候
while (getline(file, line)) {stringstream ss(line);string token;getline(ss, token, separator);
//token是读取的信息比如我举例txt中的household,separator是分隔符指读到;就停止 注意token默认为字符串类型
getline(ss, token, separator);index stoi(token);再写一个getline读取下一个sepator的内容。
我举例的文件下一个是2类型为数字所以要用到stoi(token) stoi是int\float都可以使用我的代码是前边定义了index可以改为其他想把他赋值的东西。 接下来是truebool类型 我的上一篇博客有讲到
所以字符串、数字、布尔类型的读取都有了就可以任意读取想要的信息了
另外 小数的个数可以用
setprecision(2)
包含在头文件中
#include iomanip
效果如图