• 全部
  • 问答

关于数据文本文件的读、写的几个小问题.

ratrat 2001-11-07 11:45:02
...全文
912 点赞 收藏 7
写回复
7 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
xddjd 2001-11-07
是test.cpp,还有是一行一组数据的话,如果你处理后的数据不分行的话,或者说你处理后的数据可以随你之意分行的话,那你把倒数第二行的endl改为ends就行,只是把数据分开。
如果按原样分行的话,就可能得按照读字符的方式来,比较麻烦,或者可以再请教高手看有没有更好的方法,我初学c++不久。多谢你给的分。
回复
ratrat 2001-11-07
我想问 一下是c:\\xuexi\\test.cpp;还是c:\\xuexi\\read_file
回复
ratrat 2001-11-07
是一行一组数据。
如:67 84 28 30 12;
74 93 18 27 46;
..........
58 36 72 63 91;
回复
xddjd 2001-11-07
你好,我看这个问题解决了,所以没有加注释,在倒数第二行,我只是对所有数据作了加10的处理,而且假定现在是按照你的那种说法,一行一个数据。如果要改成一行不知道多少数据,那就要在读read_file的时候用getch()函数,自己去判断一行的结束,还要将读进来的字符改成整数。这个关键是用一个向量来解决,就可以不管数据有多大了。
我假定的文件是在c:\xuexi的目录下,你试的时候改一下!
回复
ratrat 2001-11-07
#include <iostream>
#include <fstream>
#include <string>
#include <vector>

using namespace std;

void main()
{
ifstream read_file("c:\\xuexi\\test.cpp");

if(!read_file)
{
cerr<<"can not find this file\n";
return;
}
int readwords;
vector<int> text_file;
while(read_file >> readwords)
{
text_file.push_back(readwords);
}

ofstream end_file("c:\\xuexi\\test.cpp");
if(!end_file)
{
cerr<<"can not write this file\n";
return;
}

for(int jn=0;jn<text_file.size();jn++)
end_file<<(text_file[jn]+10)<<endl;
cout << "modify successly"<<endl;
}
如果想对读入的数据进行处理应在 那里加入代码?
回复
ratrat 2001-11-07
我有问题想问你。
回复
ratrat 2001-11-07
xddjd() 在吗?
回复
相关推荐
发帖
C语言
创建于2007-09-28

6.3w+

社区成员

C语言相关问题讨论
申请成为版主
帖子事件
创建了帖子
2001-11-07 11:45
社区公告
暂无公告