H2 dataBase Csv 使用(新手日志,仅用于记录,不建议参考)
2014-08-19 14:16
417 查看
最近工作需要使用H2 database,发现里面H2 database 里面Csv 挺好用的。使用时候遇到的问题,在这里记录一下,也算有个归档总结,以后便于参考
Csv里面提供了读和写两种基本方法,读取时候是也字符串类型向外读取。写的时候可以定义数据类型。
1、写
字符串 null 和 “”(空) 在csv里面存储是一样的 null 默认 ,, ; ""(空) 默认存储 ,"" 。
2、读取
第二个参数 String [] Column 传递参数 ,得到结果是不一样的, 当String [] Column 为空的时候,结果显示里面不会包含里面头的显示, 在重新组装Row时候可以根据 自己需要重新, 里面的colNames[] 是之前定义的重新排 列的顺序 ; 当String [] Column 不为空的时候,结果显示里面会有读取csv 里面头的显示,重新排序貌似也没有生效
h2 database里面读取数据文件,打算使用sql进行处理数据,必须连到内存数据上
由于读取出来都是字符串,可以使用cast 转换为自己需要的数据,或者直接将读取出来的数据 使用insert 插入到内存数据库里面
Csv里面提供了读和写两种基本方法,读取时候是也字符串类型向外读取。写的时候可以定义数据类型。
1、写
SimpleResultSet rs = new SimpleResultSet(); rs.addColumn("DEVICEID", Types.VARCHAR, 512, 0); rs.addColumn("STARTTIME", Types.VARCHAR, 32, 0); rs.addColumn("COL_NUMBER_1", Types.VARCHAR, 32, 6); rs.addColumn("COL_NUMBER_2", Types.VARCHAR, 32, 6); String de =null ; String st =""; Object [] objects ={ "de" ,new Timestamp(new Date().getTime()) ,de ,st }; rs.addRow(objects); try { new Csv().write("./result/test.csv", rs, null); } catch (SQLException e) { }
字符串 null 和 “”(空) 在csv里面存储是一样的 null 默认 ,, ; ""(空) 默认存储 ,"" 。
2、读取
第二个参数 String [] Column 传递参数 ,得到结果是不一样的, 当String [] Column 为空的时候,结果显示里面不会包含里面头的显示, 在重新组装Row时候可以根据 自己需要重新, 里面的colNames[] 是之前定义的重新排 列的顺序 ; 当String [] Column 不为空的时候,结果显示里面会有读取csv 里面头的显示,重新排序貌似也没有生效
ResultSet rs = new Csv().read(fileTemp.getAbsolutePath(), null, null); while(rs.next()){ Object [] objects = new Object [colNames.length] ; for(int i =0;i<colNames.length;i++){ objects[i] = rs.getObject(colNames[i]); // System.out.print(objects[i]+"\t"); } //System.out.println(); resultAll.addRow(objects); }
h2 database里面读取数据文件,打算使用sql进行处理数据,必须连到内存数据上
由于读取出来都是字符串,可以使用cast 转换为自己需要的数据,或者直接将读取出来的数据 使用insert 插入到内存数据库里面
select id ,cast( col1 as number) as col1 from csvread('{csvFileName}')
<span style="white-space:pre"> </span>conn = dataSource.getConnection(); PreparedStatement ps = conn.prepareStatement(sql); //ps.execute(); ResultSet rs = ps.executeQuery(); new Csv().write(filePath+".finally",rs,null);
相关文章推荐
- 建议47:使用logging记录日志信息
- java 比较两个对象属性值变化情况,用于记录日志使用
- 使用log4net组件记录系统日志
- 使用log4net记录日志到MySQL中
- 在.Net程序中使用log4net记录日志(示例)-转
- 使用log4net记录日志到MySQL中 (转)
- log4j和commons.logging日志记录的使用方法
- log4j和commons.logging日志记录的使用方法
- 想实现自己的地理应用程序?建议参考<<使用Rails和Ajax开发Google地图应用程序>>
- 网络工程师交换试验手册之二十四:使用syslog记录Cisco设备日志
- 使用commons-logging记录日志信息
- Web项目中使用NLog记录日志,利用单件模式控制整个项目只有一个Logger对象的问题
- 开始学习使用写日志的方式来记录写程序做过的修改
- 我的FreeBSD5.4安装配置过程笔记录(新手参考)第1/5页
- log4j和commons.logging日志记录的使用方法
- 在C++中使用Apache的Log4cxx记录日志
- 使用Application_Error事件处理程序把异常记录到系统事件日志
- Struts中用<bean:size>和<bean:write>的使用,用于显示集合的总记录数
- 使用 AOP 记录可定制的日志信息
- 使用Log4j进行日志记录