1、主函数

public class csvtest {

public static void main(String[] args) {

List<Car> dataList = CSVUtils.importCsv(new File("D:/test.csv"));

boolean isSuccess = CSVUtils.exportCsv(new File("D:/1.csv"), dataList);
      System.out.println(isSuccess);

}

}

2、Car类

public class Car {
        String id;
        double utc;
        double x;
        double y;
        float speed;
        float angle;
        double status;

public Car(String id, double utc, double x, double y, float speed,
                float angle, double status) {
            this.id = id;
            this.utc = utc;
            this.x = x;
            this.y = y;
            this.speed = speed;
            this.angle = angle;
            this.status = status;
        }

public String getId() {
            return id;
        }

public void setId(String id) {
            this.id = id;
        }

public double getUtc() {
            return utc;
        }

public void setUtc(double utc) {
            this.utc = utc;
        }

public double getX() {
            return x;
        }

public void setX(double x) {
            this.x = x;
        }

public double getY() {
            return y;
        }

public void setY(double y) {
            this.y = y;
        }

public float getSpeed() {
            return speed;
        }

public void setSpeed(float speed) {
            this.speed = speed;
        }

public float getAngle() {
            return angle;
        }

public void setAngle(float angle) {
            this.angle = angle;
        }

public double getStatus() {
            return status;
        }

public void setStatus(double status) {
            this.status = status;
        }
    }
3、读取和导出工具类
public class CSVUtils {
    public static boolean exportCsv(File file, List<Car> dataList) {
        boolean isSucess = false;
        FileOutputStream out = null;
        OutputStreamWriter osw = null;
        BufferedWriter bw = null;
        try {
            out = new FileOutputStream(file);
            osw = new OutputStreamWriter(out);
            bw = new BufferedWriter(osw);
            if (dataList != null && !dataList.isEmpty()) {

for (int i = 0; i < dataList.size(); i++) {
                    String[] temp = new String[7];
                    StringBuffer data = new StringBuffer();
                    
                    Car car = dataList.get(i);
                    temp[0] = car.id;
                    temp[1] = String.valueOf(car.utc);
                    temp[2] = String.valueOf(car.x);
                    temp[3] = String.valueOf(car.y);
                    temp[4] = String.valueOf(car.speed);
                    temp[5] = String.valueOf(car.angle);
                    temp[6] = String.valueOf(car.status);
                    for (int j = 0; j < 6; j++) {
                        data.append(temp[j] + ",");
                    }
                    data.append(temp[6]);
                    //String data=temp[0]+","+temp[1]+","+temp[2]+","+temp[3]+","+temp[4]+","+temp[5]+","+temp[6];
                    bw.append(data).append("\r");
                }
            }
            isSucess = true;
        } catch (Exception e) {
            isSucess = false;
        } finally {
            if (bw != null) {
                try {
                    bw.close();
                    bw = null;
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
            if (osw != null) {
                try {
                    osw.close();
                    osw = null;
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
            if (out != null) {
                try {
                    out.close();
                    out = null;
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }

return isSucess;
    }

public static List<Car> importCsv(File file) {
        List<Car> dataList = new ArrayList<Car>();
        BufferedReader br = null;
        try {
            br = new BufferedReader(new FileReader(file));
            String line;

while ((line = br.readLine()) != null) {
                String[] temp = line.split(",");
                String id = temp[0];
                double utc = Double.parseDouble(temp[1]);
                double x = Double.parseDouble(temp[2]);
                double y = Double.parseDouble(temp[3]);
                float speed = Float.parseFloat(temp[4]);
                float angle = Float.parseFloat(temp[5]);
                double status = Double.parseDouble(temp[6]);
                Car car = new Car(id, utc, x, y, speed, angle, status);
                dataList.add(car);
            }
        } catch (Exception e) {
        } finally {
            if (br != null) {
                try {
                    br.close();
                    br = null;
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }

return dataList;
    }
}

转载于:https://www.cnblogs.com/peterpan555/p/4369180.html

java读取并导出多类型数据csv文件相关推荐

  1. java读取复杂csv文件内容_java读取并导出多类型数据csv文件

    1.主函数 public class csvtest { public static void main(String[] args) { List dataList = CSVUtils.impor ...

  2. Pandas如何读取和导出 Excel、CSV、JSON 数据?

    转载自:Pandas如何读取和导出 Excel.CSV.JSON 数据? - 知乎 导入pandas等包 import pandas as pd import numpy as np import m ...

  3. python读取二进制流的CSV文件、读取zip压缩包中的csv文件(流)并把数据解析成dict

    csv文件如下,需要读取其中的数据,并将其中的数据封装成[dict],也就是list中包含一条条dict数据 csv文件自己准备吧,随处可见的,自己创一个就行,代码如下,都是自己写的 import p ...

  4. mysql 导入导出 csv_mysql 导出导入数据 -csv

    MySql数据库导出csv文件命令: mysql> select first_name,last_name,email from account into outfile 'e://output ...

  5. 问题记录:从EXCEL2013导入数据CSV文件,提示报错“此文本文件包含的数据无法放置在一个工作表中。如要继续导入可容纳的数据,请单击确定。。。”

    使用的工具是:MicrosoftOffice Excel 2013.Notepad++ v7.5.8 Spark数据处理任务生成了CSV格式的数据文件,然后要手动将CSV数据转换成excel文件,为了 ...

  6. Oracle数据库表导出和导入csv文件操作

    Oracle数据库表导出和导入csv文件操作 数据库是Oracle 9i 1.导出csv文件 这个十分简单,用pl/sql工具即可,首先选中要导出的表,右键选择Query data,在左侧出现的窗口中 ...

  7. ML之MLiR:利用多元线性回归法,从大量数据(csv文件)中提取五个因变量(输入运输任务总里程数、运输次数、三种不同的车型,预测需要花费的小时数)来预测一个自变量

    ML之MLiR:利用多元线性回归法,从大量数据(csv文件)中提取五个因变量(输入运输任务总里程数.运输次数.三种不同的车型,预测需要花费的小时数)来预测一个自变量 输出结果 代码设计 from nu ...

  8. 如何使用 MySQL 的 IDE 导出导入数据表文件(以 Navicat for MySQL 导出导入 Excel 文件为例)

    系列文章目录 关于更多 MySQL 数据库以及数据库 IDE 的问题大家可以移步本人专栏--MySQL 数据库. 文章目录 系列文章目录 前言 一.使用 Navicat 导出数据表 1.1.使用&qu ...

  9. DBeaver导出查询数据sql文件

    DBeaver导出查询数据sql文件 1 条件查询 2 全选(ctrl+a),右键-->生成SQL-->insert--复制 1 条件查询 2 全选(ctrl+a),右键–>生成SQ ...

  10. Java读取和解析Excel数据:基于Apache POI(二)

    Java读取和解析Excel数据:基于Apache POI(二) 假设附录1文章中的test.xls是对员工的考勤记录表.需要根据这张excel表统计员工的加班时间,那么需要重点关注第五列的下班时候的 ...

最新文章

  1. 在ASP.NET中随意创建图形信息
  2. Redis数据库搭建集群(集群概念、redis集群、搭建集群(配置机器1、2、创建集群、数据操作验证)、Python与redis集群交互)
  3. 添加一个文件夹及一些文件如何使用git生成patch
  4. [保护模式]PAE模式
  5. reactor多线程模型_Netty运用Reactor模式到极致
  6. nginx 重定向_虚拟机中安装nginx,重定向到resin
  7. python基础--GIL全局解释器锁、Event事件、信号量、死锁、递归锁
  8. input change获取改变之前的值和改变之后的值_科技改变游戏:玩家使用氛围灯追踪角色资源变化...
  9. Unity按钮禁用和变灰
  10. 【CodeForces - 1062C】Banh-mi (贪心,数学,找规律,快速幂)
  11. oracle颜色,oracle - Oracle SQL Developer - 如何使用颜色显示百分比(非数字) - 堆栈内存溢出...
  12. flask 启动服务
  13. 《Python核心编程》18.多线程编程(二)
  14. 菜鸟的Java基础知识学习
  15. win7计算机用户名在哪改,win7系统怎么更改用户账户名称|win7修改用户名的方法...
  16. 【CLR】程序集查找与GAC
  17. 第一章 引论 -- 项目管理知识体系指南(PMBOK指南)(第五版)
  18. wordpress中文主题,开源wordpress中文免费主题模板
  19. 阿里的数据分析技术有多强?从优酷的大数据架构中,我学到了这些
  20. Unity背包系统-2:数据库存储方法ScriptableObject和显示背包物品InventoryManager

热门文章

  1. metasploit framework的一些使用姿势(持续更新)
  2. 考拉验数(自动化验数)设计方案和实现
  3. php 解析array,深度解析PHP数组函数array_slice
  4. 基于低代码为企事业单位打造督办事务管理一体化协同管控平台
  5. 【前端知识之JS】reduce()方法与使用
  6. 平安科技软件+金山WPS测试面试题
  7. 例如ASLR和KASLR。还有CPU特性,例如SMAP、SMEP、NX和PXN。
  8. 物理机通过Xshell连接不上虚拟机的解决方案
  9. OpenHarmony hdc_std无反应的解决办法
  10. 电脑硬盘双击打不开,提示格式化怎么办?