java – 从文件中读取double值
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java – 从文件中读取double值,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1243字,纯文字阅读大概需要2分钟。
内容图文
![java – 从文件中读取double值](/upload/InfoBanner/zyjiaocheng/798/6d98f0aa507b4f49b9faa7e592000eac.jpg)
我正在尝试从文件中读取一些数字(double)并将它们存储在ArrayList和数组中(是的,我需要两者),代码如下:
try {
Scanner scan = new Scanner(file).useDelimiter("\\s*\\n");
while(scan.hasNextDouble())
{
tmp.add(scan.nextDouble());
}
Double[][] tmp2 = new Double[tmp.size()/2][2];
int tmp3 = 0;
for(int i = 0; i < tmp.size()/2; i++)
{
for(int j = 0; j < 2; j++)
{
tmp2[i][j] = tmp.get(tmp3);
tmp3++;
}
}
} catch (FileNotFoundException e1) {
e1.printStackTrace();
}
}
我正在尝试阅读的文件是:
0.0 0.0
0.023 0.023
0.05 0.05
0.2 0.2
0.5 0.5
0.8 0.8
0.950 0.950
0.977 0.977
1.0 1.0
但是我的代码不起作用,hasNextDouble()函数找不到任何东西,我做错了什么?
编辑:确定所以我编辑了一点源(从Object [] []更改为Double [] [])并在插入ArrayList后将数值插入到数组中,但它仍然不起作用 – ‘虽然’循环不是一次执行.
解决方法:
我尝试将代码缩减为仅测试扫描仪本身.以下代码适用于您的数据文件:
public static void main(String[] args) {
Scanner scan;
File file = new File("resources\\scannertester\\data.txt");
try {
scan = new Scanner(file);
while(scan.hasNextDouble())
{
System.out.println( scan.nextDouble() );
}
} catch (FileNotFoundException e1) {
e1.printStackTrace();
}
}
我得到了以下(预期)输出:
0.0
0.0
0.023
0.023
0.05
0.05
0.2
0.2
0.5
0.5
0.8
0.8
0.95
0.95
0.977
0.977
1.0
1.0
试试这个以确保您引用了正确的文件.
内容总结
以上是互联网集市为您收集整理的java – 从文件中读取double值全部内容,希望文章能够帮你解决java – 从文件中读取double值所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。