编程论坛
注册
登录
编程论坛
→
C++教室
关于从文件中读取的内容的问题
学小强编程
发布于 2012-03-17 13:21, 504 次点击
我写一个关于从文件中读取int的数,但是一开始我的文件中数字有空格,有逗号,最后的输出不是我想要的值。经过一个老师的修改,说是要把逗号去掉,才可以,事实证明确实如此。但是我想如果文件中有符号,如何使他正常读取数字(因为那天时间关系没问),并输出。。。新手求教,谢谢
7 回复
#2
nicum
2012-03-17 20:28
将数字字符读到字符数组中,再用atoi函数将字符转换成数字
#3
学小强编程
2012-03-18 13:53
回复 2楼 nicum
不好意思哦,我没听懂,能不能说的浅显一点
#4
pangding
2012-03-18 16:24
你想从什么样的文本里提取 int?给一个你准备处理的文本的例子。
#5
nicum
2012-03-18 17:07
#include <iostream>
#include <sstream>
#include <fstream>
using namespce std;
int main()
{
fstream myfile;
stringstream ss;
myfile.open(.....);
char c='0';
char t[20];
int i=0,j=0,result[100];
while(1)
{
myfile>>c;
if(myfile.eof())
break;
if(c<'0'||c>'9')
continue;
while(c>='0'&&c<='9')
{
t[i++]=c;
myfile>>c;
if(myfile.eof())
break;
}
if(i)
{
t[i]='\0';
ss<<t;
ss>>result[j++];
ss.clear();
i=0;
}
}
myfile.close();
return 0;
}
[
本帖最后由 nicum 于 2012-3-18 20:16 编辑
]
#6
学小强编程
2012-03-19 19:13
回复 4楼 pangding
就是用int中读取的,谢谢了啊
#7
pangding
2012-03-19 22:47
我是问你要读取的文本是什么样的。是
1, 2, 3,
这样的既有空格又有逗号吗?还是除了数字,逗号以外还有别的字符?
#8
学小强编程
2012-03-23 13:23
回复 7楼 pangding
只有逗号,那如果有其他字符怎么办
1