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}}]
RAKsmart 商家这几年还是在做事情的,虽然他们家顺带做的VPS主机并不是主营业务,毕竟当下的基础云服务器竞争过于激烈,他们家主营业务的独立服务器。包括在去年开始有新增多个数据中心独立服务器,包括有10G带宽的不限流量的独立服务器。当然,如果有需要便宜VPS主机的他们家也是有的,比如有最低月付1.99美元的美国VPS主机,而且可选安装Windows系统。这里商家有提供下面六款六月份的活动便宜V...
80vps怎么样?80vps最近新上了香港服务器、美国cn2服务器,以及香港/日本/韩国/美国多ip站群服务器。80vps之前推荐的都是VPS主机内容,其实80VPS也有独立服务器业务,分布在中国香港、欧美、韩国、日本、美国等地区,可选CN2或直连优化线路。如80VPS香港独立服务器最低月付420元,美国CN2 GIA独服月付650元起,中国香港、日本、韩国、美国洛杉矶多IP站群服务器750元/月...
官方网站:点击访问月神科技官网优惠码:美国优惠方案:CPU:E5-2696V2,机房:国人热衷的优质 CeraNetworks机房,优惠码:3wuZD43F 【过期时间:5.31,季付年付均可用】活动方案:1、美国机房:洛杉矶CN2-GIA,100%高性能核心:2核CPU内存:2GB硬盘:50GB流量:Unmilited端口:10Mbps架构:KVM折后价:15元/月、150元/年传送:购买链接洛...