博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
CSV-03- csv 读写框架支持数组、Map、Collection 等常见集合
阅读量:6867 次
发布时间:2019-06-26

本文共 1717 字,大约阅读时间需要 5 分钟。

集合类

有时候对象中会包含数组、Map、Collection 等常见集合。

为了存储的便利性,默认提供集合的相关支持。

特性和普通字段保持一致,如果指定注解转换,则以注解为准。

使用示例

  • UserCollection.java

用于演示集合的对象

public class UserCollection {    private String[] arrays;    private LinkedList
lists; private Map
maps; private Set
sets; //Getter/Setter/toString()}复制代码

存储

  • 待存储对象的构建
/** * 构建基于集合的测试列表 * @return 列表 * @since 0.0.3 */private List
buildCollectionList() { UserCollection user = new UserCollection(); String[] arrays = new String[]{
"a", "b", "c"}; LinkedList
lists = new LinkedList<>(Arrays.asList(arrays)); Map
maps = new HashMap<>(); maps.put("key", "value"); maps.put("key2", "value2"); Set
sets = new HashSet<>(); sets.add("set1"); sets.add("set2"); user.setLists(lists); user.setArrays(arrays); user.setMaps(maps); user.setSets(sets); return Arrays.asList(user);}复制代码
  • 执行存储
public void collectionTest() {    final String path = "src\\test\\resources\\collection.csv";    CsvWriteBs.newInstance(path)            .write(buildCollectionList());}复制代码
  • 存储效果
arrays,lists,maps,setsa|b,a|b|c,key2=value2|key=value,set1|set2复制代码

读取

  • 测试类
public void collectionTest() {    final String path = "src\\test\\resources\\collection.csv";    List
userList = CsvReadBs.newInstance(path) .read(UserCollection.class); System.out.println(userList);}复制代码
  • 测试日志
[UserCollection{arrays=[a, b], lists=[a, b, c], maps={key=value, key2=value2}, sets=[set2, set1]}]复制代码

注意

为了保证 csv 以 , 分隔的统一性。

集合使用 | 进行分隔,其中 map 的 key/value 分隔,用到了 =

在使用时要注意,不要包含上述的符号,否则会出现解析错乱。

转载于:https://juejin.im/post/5d0784daf265da1baa1e74b2

你可能感兴趣的文章
linux系统管理之四:服务状态
查看>>
VMware View FAQ[一]
查看>>
【原创翻译】布尔值(boolean)
查看>>
三元运算式、lambda表达式、内置函数map、reduce、filter以及yield生成器
查看>>
MySQL分库分表分表后数据的查询(5th)
查看>>
iOS-点击图片放大,再次点击返回原视图 类似查看相册的功能
查看>>
JAVA -- stateless4j StateMachine 使用浅析(二)
查看>>
oracle checkpoint
查看>>
centos 6.5 x64bit 快速安装openstack
查看>>
收藏的文章
查看>>
第二章链路层
查看>>
我的友情链接
查看>>
php mb_substr()函数的详细解释!
查看>>
谈谈技术规范的制定
查看>>
ubuntu12.04mtk编译环境安装
查看>>
Haproxy负载均衡比较
查看>>
inittab文件被删除的修复方法
查看>>
三种进制相互转化
查看>>
《Clean Code》重点内容总结
查看>>
SBO数据库服务器规划
查看>>