标题:c++中,如何读取一个txt文本文件中的数字,并存到数组当中
只看楼主
danone401
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2014-1-11
结帖率:0
已结贴  问题点数:20 回复次数:2 
c++中,如何读取一个txt文本文件中的数字,并存到数组当中
假如一个文本文档中有一个矩阵

想编一个程序读取这个文本文档中的数字并储存到一个一维数组a[]中。这个数组只要这个文档中的数字,空格,换行符,回车键都不要,而且数字是int型或double型的。谢谢各位了,我是新手,弄了好久弄不出来。
搜索更多相关主题的帖子: 如何 文本文件 
2014-01-11 20:29
蚕头燕尾
Rank: 10Rank: 10Rank: 10
来 自:Gryffindo
等 级:贵宾
威 望:12
帖 子:734
专家分:1546
注 册:2013-3-24
得分:10 
说说我的想法~

逐个字符读取,存到vector<char>里面(包括小数点),遇到空格停止,然后自己解释vector里面的那些字符就行了~

该在哪种数位上的就乘以10的多少倍~

PS:如果能够可以先转化成二进制文件,就会方便的多
直接这样:
double temp;
fin>>temp;------->fin是文件流对象
fin(sizeof(char),ios::cur); ------>跳过一个Tab或者换行符的大小

如此循环即可

注意:如果是二进制文件,不要用eof判断文件尾。


学习编程,为的是表达自己的思想,而不是被别人的思想所禁锢。要先明白自己想干嘛,而不要先问别人让你干嘛。               

                                                                                                                    Black Cat      Hello Tomorrow~
2014-01-12 11:40
lintaoyn
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:4
帖 子:605
专家分:2489
注 册:2009-4-8
得分:10 
程序代码:
int main(){
    ifstream fis("D:\\test.txt"); 
    istream_iterator<double> is(fis);
    istream_iterator<double> isend;
    vector<double> coll(is, isend);
    for(double& v : coll){
        cout << v << "\n";
    }
    return 0;
}

迭代的是人,递归的是神。
2014-01-13 16:24



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-426415-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.777110 second(s), 9 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved