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

香港E3 16G 390元/ 香港E5*2 32G 600元/ 香港站群 4-8C 1200元/ 美国200G高防 900/ 日本100M 700元

3C云国内IDC/ISP资质齐全商家,与香港公司联合运营, 已超6年运营 。本次为大家带来的是双12特惠活动,香港美国日本韩国|高速精品|高防|站群|大带宽等产品齐全,欢迎咨询问价。3C云科技有限公司官方网站:http://www.3cccy.com/客服QQ:937695003网页客服:点击咨询客户QQ交流群:1042709810价目表总览升级内存 60元 8G内存升级硬盘 1T机械 90元 2...

提速啦(900元/月),杭州BGP E5-2665/89*2 32核 48G 100G防御

提速啦的来历提速啦是 网站 本着“良心 便宜 稳定”的初衷 为小白用户避免被坑提速啦的市场定位提速啦主要代理市场稳定速度的云服务器产品,避免新手购买云服务器的时候众多商家不知道如何选择,妮妮云就帮你选择好了产品,无需承担购买风险,不用担心出现被跑路 被诈骗的情况。提速啦的售后保证提速啦退款 通过于合作商的友好协商,云服务器提供3天内全额退款,超过3天不退款 物理机部分支持当天全额退款提速啦提现 充...

无法忍受旧版不兼容PHP7+主题 更换新主题

今天父亲节我们有没有陪伴家人一起吃个饭,还是打个电话问候一下。前一段时间同学将网站账户给我说可以有空更新点信息确保他在没有时间的时候还能保持网站有一定的更新内容。不过,他这个网站之前采用的主题也不知道来源哪里,总之各种不合适,文件中很多都是他多年来手工修改的主题拼接的,并非完全适应WordPress已有的函数,有些函数还不兼容最新的PHP版本,于是每次出现问题都要去排查。于是和他商量后,就抽时间把...

转义字符为你推荐
学生杀毒软件免费下载支持ipad支持ipad支持ipad支持ipad支持ipad三星苹果5ipad如何上网如何用手机流量在IPAD上上网ipad连不上wifiipad2 wifi连接不上,刚连上就弹出一个 success页面win7telnet怎样开启Windows7系统中的Telnet服务
日本vps 域名服务器是什么 星星海 bandwagonhost 服务器怎么绑定域名 南昌服务器托管 天互数据 什么是刀片服务器 华为云盘 空间登录首页 ebay注册 smtp服务器地址 德隆中文网 百度云空间 华为k3 lamp什么意思 xuni 万网注册 网站加速 godaddyssl 更多