转义java csv 读写框架特殊字符转义

转义字符  时间:2021-04-20  阅读:()

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}}]

爱用云互联租用服务器租美国、日本、美国、日本、购买2天内不满意可以退换,IP可免费更换!

爱用云互联怎么样?爱用云是一家成立于2018年的老牌商家旗下的服务器销售品牌,是正规持证IDC/ISP/IRCS商家,主要销售国内、中国香港、国外服务器产品,线路有腾讯云国外线路、自营香港CN2线路等,都是中国大陆直连线路,非常适合免备案建站业务需求和各种负载较高的项目,同时国内服务器也有多个BGP以及高防节点。专注为个人开发者用户,中小型,大型企业用户提供一站式核心网络云端服务部署,促使用户云端...

青云互联-洛杉矶CN2弹性云限时五折,9.5元/月起,三网CN2gia回程,可选Windows,可自定义配置

官方网站:点击访问青云互联官网优惠码:五折优惠码:5LHbEhaS (一次性五折,可月付、季付、半年付、年付)活动方案:的套餐分为大带宽限流和小带宽不限流两种套餐,全部为KVM虚拟架构,而且配置都可以弹性设置1、洛杉矶cera机房三网回程cn2gia 洛杉矶cera机房                ...

MineServer:洛杉矶CN2 GIA VPS/512MB内存/20GB NVME/800GB流量/200Mbps/KVM,58元/季

mineserver怎么样?mineserver是一家国人商家,主要提供香港CN2 KVM VPS、香港CMI KVM VPS、日本CN2 KVM VPS、洛杉矶cn2 gia端口转发等服务,之前介绍过几次,最近比较活跃。这家新推出了洛杉矶CN2 GIA VPS,512MB内存/20GB NVME/800GB流量/200Mbps/KVM,58元/季,并且进行了带宽升级,同时IP更改为美国IP。点击...

转义字符为你推荐
上海fastreport2supplementedroutecontentgooglehttp://www.paper.edu.cn支持ipad责任编辑:纪春更新iphone您的iphonecss3圆角用CSS3怎么实现圆角边框?勒索病毒win7补丁win7有针对勒索病毒的补丁吗
lnmp 国外主机 kvmla 主机 winhost 国外在线代理 河南服务器 泉州电信 网通服务器托管 网站加速软件 wordpress中文主题 xuni 国外免费云空间 创速 石家庄服务器 腾讯云平台 连连支付 cdn免备案空间 阿里云宕机故障 let 更多