java读取并导出多类型数据csv文件
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文件相关推荐
- java读取复杂csv文件内容_java读取并导出多类型数据csv文件
1.主函数 public class csvtest { public static void main(String[] args) { List dataList = CSVUtils.impor ...
- Pandas如何读取和导出 Excel、CSV、JSON 数据?
转载自:Pandas如何读取和导出 Excel.CSV.JSON 数据? - 知乎 导入pandas等包 import pandas as pd import numpy as np import m ...
- python读取二进制流的CSV文件、读取zip压缩包中的csv文件(流)并把数据解析成dict
csv文件如下,需要读取其中的数据,并将其中的数据封装成[dict],也就是list中包含一条条dict数据 csv文件自己准备吧,随处可见的,自己创一个就行,代码如下,都是自己写的 import p ...
- mysql 导入导出 csv_mysql 导出导入数据 -csv
MySql数据库导出csv文件命令: mysql> select first_name,last_name,email from account into outfile 'e://output ...
- 问题记录:从EXCEL2013导入数据CSV文件,提示报错“此文本文件包含的数据无法放置在一个工作表中。如要继续导入可容纳的数据,请单击确定。。。”
使用的工具是:MicrosoftOffice Excel 2013.Notepad++ v7.5.8 Spark数据处理任务生成了CSV格式的数据文件,然后要手动将CSV数据转换成excel文件,为了 ...
- Oracle数据库表导出和导入csv文件操作
Oracle数据库表导出和导入csv文件操作 数据库是Oracle 9i 1.导出csv文件 这个十分简单,用pl/sql工具即可,首先选中要导出的表,右键选择Query data,在左侧出现的窗口中 ...
- ML之MLiR:利用多元线性回归法,从大量数据(csv文件)中提取五个因变量(输入运输任务总里程数、运输次数、三种不同的车型,预测需要花费的小时数)来预测一个自变量
ML之MLiR:利用多元线性回归法,从大量数据(csv文件)中提取五个因变量(输入运输任务总里程数.运输次数.三种不同的车型,预测需要花费的小时数)来预测一个自变量 输出结果 代码设计 from nu ...
- 如何使用 MySQL 的 IDE 导出导入数据表文件(以 Navicat for MySQL 导出导入 Excel 文件为例)
系列文章目录 关于更多 MySQL 数据库以及数据库 IDE 的问题大家可以移步本人专栏--MySQL 数据库. 文章目录 系列文章目录 前言 一.使用 Navicat 导出数据表 1.1.使用&qu ...
- DBeaver导出查询数据sql文件
DBeaver导出查询数据sql文件 1 条件查询 2 全选(ctrl+a),右键-->生成SQL-->insert--复制 1 条件查询 2 全选(ctrl+a),右键–>生成SQ ...
- Java读取和解析Excel数据:基于Apache POI(二)
Java读取和解析Excel数据:基于Apache POI(二) 假设附录1文章中的test.xls是对员工的考勤记录表.需要根据这张excel表统计员工的加班时间,那么需要重点关注第五列的下班时候的 ...
最新文章
- 在ASP.NET中随意创建图形信息
- Redis数据库搭建集群(集群概念、redis集群、搭建集群(配置机器1、2、创建集群、数据操作验证)、Python与redis集群交互)
- 添加一个文件夹及一些文件如何使用git生成patch
- [保护模式]PAE模式
- reactor多线程模型_Netty运用Reactor模式到极致
- nginx 重定向_虚拟机中安装nginx,重定向到resin
- python基础--GIL全局解释器锁、Event事件、信号量、死锁、递归锁
- input change获取改变之前的值和改变之后的值_科技改变游戏:玩家使用氛围灯追踪角色资源变化...
- Unity按钮禁用和变灰
- 【CodeForces - 1062C】Banh-mi (贪心,数学,找规律,快速幂)
- oracle颜色,oracle - Oracle SQL Developer - 如何使用颜色显示百分比(非数字) - 堆栈内存溢出...
- flask 启动服务
- 《Python核心编程》18.多线程编程(二)
- 菜鸟的Java基础知识学习
- win7计算机用户名在哪改,win7系统怎么更改用户账户名称|win7修改用户名的方法...
- 【CLR】程序集查找与GAC
- 第一章 引论 -- 项目管理知识体系指南(PMBOK指南)(第五版)
- wordpress中文主题,开源wordpress中文免费主题模板
- 阿里的数据分析技术有多强?从优酷的大数据架构中,我学到了这些
- Unity背包系统-2:数据库存储方法ScriptableObject和显示背包物品InventoryManager
热门文章
- metasploit framework的一些使用姿势(持续更新)
- 考拉验数(自动化验数)设计方案和实现
- php 解析array,深度解析PHP数组函数array_slice
- 基于低代码为企事业单位打造督办事务管理一体化协同管控平台
- 【前端知识之JS】reduce()方法与使用
- 平安科技软件+金山WPS测试面试题
- 例如ASLR和KASLR。还有CPU特性,例如SMAP、SMEP、NX和PXN。
- 物理机通过Xshell连接不上虚拟机的解决方案
- OpenHarmony hdc_std无反应的解决办法
- 电脑硬盘双击打不开,提示格式化怎么办?