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

Bluehost美国虚拟主机2.95美元/月,十八周年庆年付赠送顶级域名和SSL证书

Bluehost怎么样,Bluehost好不好,Bluehost成立十八周年全场虚拟主机优惠促销活动开始,购买12个月赠送主流域名和SSL证书,Bluehost是老牌虚拟主机商家了,有需要虚拟主机的朋友赶紧入手吧,活动时间:美国MST时间7月6日中午12:00到8月13日晚上11:59。Bluehost成立于2003年,主营WordPress托管、虚拟主机、VPS主机、专用服务器业务。Blueho...

亚洲云-浙江高防BGP,至强铂金8270,提供自助防火墙管理,超大内存满足你各种需求

官方网站:点击访问亚洲云官网618活动方案:618特价活动(6.18-6.30)全站首月活动月底结束!地区:浙江高防BGPCPU:至强铂金8270主频7 默频3.61 睿频4.0核心:8核(最高支持64核)内存:8G(最高支持128G)DDR4 3200硬盘:40G系统盘+80G数据盘带宽:上行:20Mbps/下行:1000Mbps防御:100G(可加至300G)防火墙:提供自助 天机盾+金盾 管...

friendhosting:(优惠55%)大促销,全场VPS降价55%,9个机房,不限流量

每年的7月的最后一个周五是全球性质的“系统管理员日”,据说是为了感谢系统管理员的辛苦工作....friendhosting决定从现在开始一直到9月8日对其全球9个数据中心的VPS进行4.5折(优惠55%)大促销。所有VPS基于KVM虚拟,给100M带宽,不限制流量,允许自定义上传ISO...官方网站:https://friendhosting.net比特币、信用卡、PayPal、支付宝、微信、we...

转义字符为你推荐
寄存器ios10伺服器chrome支持ipad支持ipad支持ipad支持ipadcss3圆角在HTML里如何实现圆角矩形?win7关闭445端口win7系统怎么关闭445和135这两个端口win10445端口windows server2008怎么开放4443端口win10445端口Win10系统开放端口号怎样查看?
到期域名查询 免费试用vps 256m内存 mediafire 宕机监控 12306抢票攻略 e蜗牛 毫秒英文 电子邮件服务器 主机管理系统 东莞服务器托管 免费php空间 cdn服务 存储服务器 789电视剧网 万网服务器 googlevoice 开心online restart 服务器是什么意思 更多