热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

在java中如何实现从一个文本文件中读取浮点数据(多组),并将其依次放入数组中?

在java中如何实现从一个文本文件中读取浮点数据(多组),并将其依次放入数组中?我将非常感谢!!
在java中如何实现从一个文本文件中读取浮点数据(多组),并将其依次放入数组中?我将非常感谢!!

4 个解决方案

#1


文本中的数据没有分隔符?
应该以分割符读取

#2


读取字符串内容,用String的split方法将其按分隔符分开成String[]
用Float.parseFloat 或者 Double.parseDouble 来将数组中的每个字符串解析成浮点数,保存在数组中

String content = 从文本读取的内容
String[] tokens = content.split(",");
double[] data = new double[tokens.length];
for (int i = 0; i < data.length; i++) {
    data[i] = Double.parseDouble(tokens[i]);
}

#3


其实就算没有特别写分割符也行  用空格 +JDK1.5里面的SCANNER类
贴一段代码你 看下

    public synchronized void memoryValueUpdate(File file) {
        LinkedList linkedList = new LinkedList();
        try {
            Scanner scanner = new Scanner(file);
            while (scanner.hasNext()) {
                linkedList.add(scanner.next());
            }
        } catch (FileNotFoundException ex) {
            JOptionPane.showMessageDialog(this, ex.getMessage(), "Error",
                                          JOptionPane.ERROR_MESSAGE);

        }
        if (linkedList != null) {
            String str1 = (String) linkedList.get(linkedList.indexOf(
                    "cdppmainflag") + 1);
            if (!str1.equals("0")) {
                jTextField14.setText((String) linkedList.get(linkedList.indexOf(
                        "cdppmain") - 4) + "%");
                float tmp1 = Float.parseFloat((String) linkedList.get(
                        linkedList.indexOf("MemTotal:") + 1))
                             *
                             Float.parseFloat((String) linkedList.get(
                        linkedList.
                        indexOf("cdppmain") - 3));
                jTextField15.setText(String.valueOf(Math.round(tmp1 * 0.01 *
                        100) / 100));
                jButton1.setEnabled(false);
                jTextField13.setText("运行");
            } else {
                jTextField14.setText("");
                jTextField15.setText("");
                jButton1.setEnabled(true);
                jTextField13.setText("停止");
            }
            jTextField21.setText((String) (linkedList.get(linkedList.indexOf(
                    "MemFree:") + 1)));
            String str2 = (String) linkedList.get(linkedList.indexOf(
                    "PowerViewflag") + 1);
            if (!str2.equals("0")) {
                //     System.out.println("DO PowerViewflag");
                jTextField18.setText((String) linkedList.get(linkedList.indexOf(
                        "java") - 4) + "%");
                float tmp2 = Float.parseFloat((String) linkedList.get(
                        linkedList.indexOf("MemTotal:") + 1))
                             *
                             Float.parseFloat((String) linkedList.get(
                        linkedList.
                        indexOf("java") - 3));
                jTextField19.setText(String.valueOf(String.valueOf(Math.round(
                        tmp2 * 0.01 * 100) / 100)));
                jButton3.setEnabled(false);
                jTextField17.setText("运行");
            } else {
                jTextField18.setText("");
                jTextField19.setText("");
                jButton3.setEnabled(true);
                jTextField17.setText("停止");
            }

            float sum = Float.parseFloat((String) (linkedList.get(linkedList.
                    indexOf("user") - 1)))
                        +
                        Float.parseFloat((String) (linkedList.get(linkedList.
                    indexOf("system") - 1)));
            jTextField22.setText(String.valueOf(Math.round(sum * 100) / 100) +
                                 "%");
        }
    }

#4


怎么都是星星级的。啊??
呼....

推荐阅读
author-avatar
bl乄ue光耀
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有