c++中怎么用一个函数读取不同的文件??!!

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c++中怎么用一个函数读取不同的文件??!!相关的知识,希望对你有一定的参考价值。

#include <iostream>
#include <sstream>
#include <vector>
#include <string>
#include <fstream>
#include <cmath>
using namespace std;
typedef vector<vector< double> > Mat;
Mat input();
int main (void)

Mat a = input();//读取文件函数
for (int i = 0; i < a.size();i++)//输出shuju.txtz中的数据

for(int j = 0; j < a[i].size();j++)

cout<<fixed<<a[i][j]<<" "<<flush;

cout<<endl;

return 0;

Mat input()//读取文件函数

ifstream in("shuju.txt");
Mat a;
istringstream istr;
string str;
vector<double> tmpvec;
while(getline(in,str))

istr.str(str);
double tmp;
while(istr>>tmp)

tmpvec.push_back(tmp);

a.push_back(tmpvec);
tmpvec.clear();
istr.clear();

in.close();
return a;

我要是在程序的其它地方读取其他文件比如shuju1.txt的话又要重新建立个函数,这样很麻烦。能有其他办法不???!!!

使用vector<string> FileList,存下每一个文件的名字和路径,比如D:\\001.txt,或者002.txt,类似的所有文件名,然后读取文件时使用for来遍历Filelist,每一次可以使用类似 fopen(Filelist[i])来打开一个文件来进行读取,如此,就可以对你要读的文件全部读取了。至于读进来的东西存在哪里是你自己要想的事情。 参考技术A 读取的文件的所在路径放在一个容器中, 遍历容器,依次读取

C++同一工程main该怎么处理?大家好,同一工程下写不同的CPP文件时好像不能用多个main,那么该怎么办呢?

main不知道怎么处理,当执行了第1个CPP后第2个CPP就不能执行,删了第1个文件就行了 我想保留多个CPP文件。请大家赐教!谢谢!

这个问题不是很大,最主要的原因,一个project只有一个入口地址,也就是main函数地址

具体步骤:

把原来的从当前项目中删除

添加一个新的project

然后在新的project中把删除的那个文件和相关的文件加上就可以了

可以同时编译两个project
参考技术A 同一个工程下只能有一个main函数,像你的情况,两种解决办法:
1.将不同的main函数放到不同的工程里,每次编译一个工程;
2.将暂时不用的main函数的cpp文件从当前项目删除,需要编译时再添加进来。
参考技术B 把main函数改掉,换成别的名,只留一个main函数,然后在main函数里面调用其他函数!一个工程只能拥有一个main函数,它是主程序执行的入口,程序执行时首先调用main函数,如果你有多个main函数的话,程序开始执行时就不知道该调用哪个了! 参考技术C 把第一个.cpp文件全部注释掉,我一直这样干。
注vs2008,2010可以用快捷键ctrl+k,c以及ctrl+k,u来分别快速注释和取消注释(先要全选才行)。
参考技术D 好像vc6不是有个设置某个文件无效,不参与编译的?

以上是关于c++中怎么用一个函数读取不同的文件??!!的主要内容,如果未能解决你的问题,请参考以下文章

怎么用c++读取文本文件中的换行符和空格?

C++文件读取中,怎样从文件中读取一种类型的数据

C++中怎么逐行读取数据

用C++写的二进制文件,用JAVA怎么读取?

用C++写的二进制文件,用JAVA怎么读取?

C#中怎么读取Struct(结构体)文件!!!!??救救我!!!!