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

Linode十八周年及未来展望

这两天Linode发布了十八周年的博文和邮件,回顾了过去取得的成绩和对未来的展望。作为一家运营18年的VPS主机商,Linode无疑是有一些可取之处的,商家提供基于KVM架构的VPS主机,支持随时删除(按小时计费),可选包括美国、英国、新加坡、日本、印度、加拿大、德国等全球十多个数据中心,所有机器提供高出入网带宽,最低仅$5/月($0.0075/小时)。This month marks Linod...

IMIDC日本多IP服务器$88/月起,E3-123x/16GB/512G SSD/30M带宽

IMIDC是一家香港本土运营商,商家名为彩虹数据(Rainbow Cloud),全线产品自营,自有IP网络资源等,提供的产品包括VPS主机、独立服务器、站群独立服务器等,数据中心区域包括香港、日本、台湾、美国和南非等地机房,CN2网络直连到中国大陆。目前主机商针对日本独立服务器做促销活动,而且提供/28 IPv4,国内直连带宽优惠后每月仅88美元起。JP Multiple IP Customize...

LOCVPS全场8折,香港云地/邦联VPS带宽升级不加价

LOCVPS发布了7月份促销信息,全场VPS主机8折优惠码,续费同价,同时香港云地/邦联机房带宽免费升级不加价,原来3M升级至6M,2GB内存套餐优惠后每月44元起。这是成立较久的一家国人VPS服务商,提供美国洛杉矶(MC/C3)、和中国香港(邦联、沙田电信、大埔)、日本(东京、大阪)、新加坡、德国和荷兰等机房VPS主机,基于XEN或者KVM虚拟架构,均选择国内访问线路不错的机房,适合建站和远程办...

转义字符为你推荐
三星苹果5windows键是哪个Win键是什么?win10关闭445端口在win10 如何关闭445端口的最新相关信息iexplore.exe应用程序错误iexplore.exe应用程序错误tcpip上的netbiostcpip上的netbios是什么用的,有安全隐患吗?开启还是关上tcpip上的netbios禁用tcp/ip上的netbios对网络应用软件的正常运行有没有影响?win7telnet怎样开启Windows7系统中的Telnet服务google中国地图谷歌中国地图用的是什么投影,什么坐标系重庆电信宽带测速重庆电信光纤宽带网络,内外网络和电脑等设备都没发生变化的情况下,办理了从20M提速到100M业务。谷歌sb为什么搜索SB第一个是google?
org域名 查询ip地址 如何查询ip地址 godaddy域名解析教程 阿云浏览器 腾讯云盘 lunarpages blackfriday omnis sub-process 512m内存 息壤代理 linode支付宝 路由跟踪 贵阳电信 阵亡将士纪念日 域名和主机 带宽测试 乐视会员免费领取 新疆服务器 更多