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

腾讯云爆款秒杀:1C2G5M服务器38元/年,CDN流量包6元起

农历春节将至,腾讯云开启了热门爆款云产品首单特惠秒杀活动,上海/北京/广州1核2G云服务器首年仅38元起,上架了新的首单优惠活动,每天三场秒杀,长期有效,其中轻量应用服务器2G内存5M带宽仅需年费38元起,其他产品比如CDN流量包、短信包、MySQL、直播流量包、标准存储等等产品也参与活动,腾讯云官网已注册且完成实名认证的国内站用户均可参与。活动页面:https://cloud.tencent.c...

搬瓦工VPS:高端线路,助力企业运营,10Gbps美国 cn2 gia,1Gbps香港cn2 gia,10Gbps日本软银

搬瓦工vps(bandwagonhost)现在面向中国大陆有3条顶级线路:美国 cn2 gia,香港 cn2 gia,日本软银(softbank)。详细带宽是:美国cn2 gia、日本软银,都是2.5Gbps~10Gbps带宽,香港 cn2 gia为1Gbps带宽,搬瓦工是目前为止,全球所有提供这三种带宽的VPS(云服务器)商家里面带宽最大的,成本最高的,没有第二家了! 官方网站:https...

美国服务器20G防御 50G防御 688元CN2回国

全球领先的IDC服务商华纳云“美国服务器”正式发售啦~~~~此次上线的美国服务器包含美国云服务器、美国服务器、美国高防服务器以及美国高防云服务器。针对此次美国服务器新品上线,华纳云也推出了史无前例的超低活动力度。美国云服务器低至3折,1核1G5M低至24元/月,20G DDos防御的美国服务器低至688元/月,年付再送2个月,两年送4个月,三年送6个月,且永久续费同价,更多款高性价比配置供您选择。...

转义字符为你推荐
"中科院重庆绿色智能技术研究院采购供应商信息登记表"模块ios8支持ipad支持ipad支持ipadtraceroute网络管理工具traceroute是什么程序ipad连不上wifi苹果ipad突然连不上网了,是怎么回事?网络是好的,手机能上网。ipad上网ipad上网速度很慢怎么回事?联通版iphone4s联通版iPhone4s 用联通3G卡好还是移动的好chromeframechrome需要frame吗
网站虚拟主机空间 免费linux主机 万网域名解析 vir 韩国空间 京东商城双十一活动 52测评网 河南m值兑换 最好的免费空间 isp服务商 香港新世界中心 starry hdsky tracker服务器 sonya 挂马检测工具 网络安装 海康流媒体服务器 kosskeb4 免费网络电视软件 更多