C++中如何读取文件内容

 我来答
大野瘦子
高粉答主

2018-12-06 · 繁杂信息太多,你要学会辨别
知道小有建树答主
回答量:1227
采纳率:100%
帮助的人:34万
展开全部

两种读取方法,一种是按行读取,一种是按单词读取,具体如下:

1、按照行读取

string filename = "C:\\Users\\asusa\\Desktop\\蓝桥\\rd.txt";

fstream fin;

fin.open(filename.c_str(), ios::in);

(此处空格一行)

vector<string> v;

string tmp;

(此处空格一行)

while (getline(fin, tmp))

{

v.push_back(tmp);

}

(此处空格一行)

for (auto x : v)

cout << x << endl;

2、按照单词读取

string filename = "C:\\Users\\asusa\\Desktop\\蓝桥\\rd.txt";

fstream fin;

fin.open(filename.c_str(), ios::in);

(此处空格一行)

vector<string> v;

string tmp;

(此处空格一行)

while (fin >> tmp)

{

v.push_back(tmp);

}

(此处空格一行)

for (auto x : v)

cout << x << endl;

扩展资料:

有读取就有写入,下面是写入的方法

//向文件写五次hello。

fstream out;

out.open("C:\\Users\\asusa\\Desktop\\蓝桥\\wr.txt", ios::out);

(此处空格一行)

if (!out.is_open())

{

cout << "读取文件失败" << endl;

}

string s = "hello";

(此处空格一行)

for (int i = 0; i < 5; ++i)

{

out << s.c_str() << endl;

}

out.close();

百度网友4684e1e
推荐于2017-09-08 · TA获得超过2309个赞
知道小有建树答主
回答量:1266
采纳率:0%
帮助的人:550万
展开全部
/*
*写文件
*/

#include <fstream>
using namespace std;

int main()
{
ofstream ocout;
ocout.open("test.txt");
ocout<<"Hello,C++!";
ocout.close();
return 0;
}

---------------------------------------------------------
/*
*读文件
*
*/

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

int main()
{
ifstream icin;
icin.open("test.txt");
char temp[100];//定义一个字符数组temp
icin>>temp;//将文件中的数据读到字符数组temp中
cout<<temp<<endl;//将temp中存放的内容输出到屏幕上
return 0;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
思人思国
推荐于2017-09-23 · 超过17用户采纳过TA的回答
知道答主
回答量:85
采纳率:0%
帮助的人:63万
展开全部
#include <iostream>//
#include <fstream>
using namespace std;
int main()
{
fstream infile("c:\\data.txt");
string str[6];
int temp[6],i;
for(i=0;i<6;i++)
{
inflie>>str[i]>>temp[i];
}
return 0;
}

用字符串把前面的读取,用整型读取后面的。inflie》是按照空格或者换行区分两个流的。所以一般要知道读取的东西是什么,按照格式来,不然很容易出错。程序我没有调试过,但是应该是能运行的。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
pppoe20
2012-03-15 · TA获得超过2441个赞
知道小有建树答主
回答量:802
采纳率:50%
帮助的人:281万
展开全部
fopen fgets fclose用这些函数就好了啊。 打开一个文件,获取一行内容,最后关闭。当然还要有一些出错判断以及文件是否结尾的判断,循环取内容。
追问
如果文件内容为
black 100
red 200
white 50
black 44
white 33
red 88
如何将数据全部读入
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
SupreMe801
2013-01-09
知道答主
回答量:9
采纳率:0%
帮助的人:3.6万
展开全部
#include <iostream>
#include <fstream>
#include <string>
using namespace std;

int main(int argc, char *argv[])
{
ifstream ifs;
//ifs.open(argv[1]);//传入命令行参数(需要打开的文件文件路径/文件名)
ifs.open("./a.txt",ios::app);

string buf = "\0";
while(getline(ifs,buf))
{
cout << buf << endl;
}
ifs.close();
return 0;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式