java中获取文件内容中的所有数字,要求如下: 1.创建sadk.txt文件(文件输入可手动创建和录入); 60

2.使用IO流获取data.txt文件内容中的所有数字;3.将获取到的所有数字使用IO流写入到文件result.txt文件中;*例:sadk.txt文件内容:asd679... 2.使用IO流获取 data.txt文件内容中的所有数字;
3.将获取到的所有数字 使用IO流写入 到文件 result.txt文件中 ;
*例:sadk.txt文件内容:asd679huhu123hjh;
*最终保存至result.txt文件的内容:679123;
不用正则怎么获得啊?(因为我还卡不懂)
求大神来解答,我是一名初学者,麻烦尽量写的浅显点
展开
 我来答
匿名用户
2017-04-06
展开全部
Scanner sc = new Scanner(new File("sadk.txt"));
String str = sc.nextLine();
char[] num = new char[0];
for(char c : str.toCharArray()){
   if( c >='0' &&  c <='9'){
       num = Arrays.copyOf(num,num.length + 1);
       num[num.length - 1] = c;
   }
}
for(char c : num){
    System.out.println(c);
}
追问
大大写的对于我这个初学者好像有点难懂啊,基本上只看懂了10%,大大能用再通俗的方式说下么,小小先谢谢了
追答
//读取文件的工具
Scanner sc = new Scanner(new File("sadk.txt"));
//从文件中读取一行内容作为字符串
String str = sc.nextLine();
//定义一个字符数组,用来保存字符串中的字符
char[] num = new char[0];
//循环读取字符串中每个字符
for(char c : str.toCharArray()){
   //java中每个字符对应一个整数'0'-'9'对应 48 - 57
   //判断当前字符是否是'0' - '9'之间的字符
   if( c >='0' &&  c <='9'){
       //如果是,把数组扩大一位
       num = Arrays.copyOf(num,num.length + 1);
       //把字符放到数组里
       num[num.length - 1] = c;
   }
}
//循环输出数组中的每个字符
for(char c : num){
    System.out.println(c);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式