csvcsv是基于java注解的csv读写框架。
特性
• Fluent流式写法
• 基于java注解支持自定义的转换和灵活配置
• 内置8大基本类型以及String类型转换
• 解决Excel直接打开 utf-8乱码问题
• 支持集合、数组、 Map的存取
• 支持对象中内嵌其他对象
• 支持特殊字符转义
特殊字符转义
在实际使用中有时候我们会用到, | :=。
这几个被使用的特殊字符。
如果你希望这些特殊的字符被正确的存取那么可以使用escape属性执行。特殊字符的转换
原始 转义后
, `&CSV_COMMA;
| &CSV_OR;
: &CSV_COLON;
= &CSV_EUQAL;
下面演示一下如何使用
暂时转义字符不支持自定义。
测试代码
写入测试public void escapeTest() {final String path = "src\\test\\resources\\escape.csv";
CsvWriteBs.newInstance(path)
.escape(true)
.write(buildUserEscapeList());
}
• 生成文件效果name,map,nameList,userone&CSV_COMMA;one,key&CSV_EUQAL;key=value&CSV_EUQAL;value,one&CSV_OR;one|two&CSV_OR;two,entry&CSV_COLON;name:0:0.0:0.0:false:0:0: :0
相关代码
• UserEscape.java
其中用到的对象为public class UserEscape {
/**
*使用,
*/private String name;
/**
*使用map =
*/private Map<String, String> map;
/**
*使用|
*/private List<String> nameList;
/**
*使用:
*/
@CsvEntryprivate User user;
//Getter & Setter & ToString()
}
• buildUserEscapeList()
构建时特意使用了特殊的字符。private List<UserEscape> buildUserEscapeList() {
UserEscape escape = new UserEscape();
Map<String, String> map = new HashMap<>();map.put("key=key", "value=value" );
User user = new User();user.name("entry:name");escape.name("one,one");escape.nameList(Arrays.asList("one|one", "two|two"));escape.map(map);escape.user(user);return Collections.singletonList(escape);
}
读取测试public void escapeTest() {final String path = "src\\test\\resources\\escape.csv";
List<UserEscape> userList = CsvReadBs.newInstance(path)
.escape(true)
.read(UserEscape.class);
System.out.println(userList);
}
• 日志信息
[UserEscape{name='one,one' , nameList=[one|one, two|two] , user=User{name='entry:name' , age=0, score=0.0, money=0.0, sex=false, level=0, id=0, status= , coin=0}, map={key=key=value=value}}]
弘速云是创建于2021年的品牌,运营该品牌的公司HOSU LIMITED(中文名称弘速科技有限公司)公司成立于2021年国内公司注册于2019年。HOSU LIMITED主要从事出售香港VPS、美国VPS、香港独立服务器、香港站群服务器等,目前在售VPS线路有CN2+BGP、CN2 GIA,该公司旗下产品均采用KVM虚拟化架构。可联系商家代安装iso系统。国庆活动 优惠码:hosu10-1产品介绍...
LetBox此次促销依然是AMD Ryzen处理器+NVME硬盘+HDD大硬盘,以前是5TB月流量,现在免费升级到10TB月流量。另外还有返余额的活动,如果月付,月付多少返多少;如果季付或者半年付,返25%;如果年付,返10%。依然全部KVM虚拟化,可自定义ISO系统。需要大硬盘vps、大流量vps、便宜AMD VPS的朋友不要错过了。不过LetBox对帐号审核严格,最好注册邮箱和paypal帐号...
前几天还在和做外贸业务的网友聊着有哪些欧洲机房的云服务器、VPS商家值得选择的。其中介绍他选择的还是我们熟悉的Vultr VPS服务商,拥有比较多达到17个数据中心,这不今天在登录VULTR商家的时候看到消息又新增一个新的机房。这算是第18个数据中心,也是欧洲VPS主机,地区是瑞典斯德哥尔摩。如果我们有需要欧洲机房的朋友现在就可以看到开通的机房中有可以选择瑞典机房。目前欧洲已经有五个机房可以选择,...