CsvHelper文档-6类型转换
CsvHelper文档-6类型转换
CsvHelper使用类型转换器来转换string到对象,或者对象到string;
ITypeConverter
类型转换器的结构,必须实现;
public interface ITypeConverter
{
string ConvertToString( object value, IWriterRow row, MemberMapData memberMapData );
string ConvertFromString( string text, IReaderRow row, MemberMapData memberMapData );
}
ConvertToString
转换一个对象到string
参数
- value:被转换的对象可以是值类型也可以是引用类型。
- row: 允许转换器写入的IWriterRow接口可以访问configuration和上下文。
- memberMapData: 设置的映射数据,映射被转换的成员
ConvertFromString
把string转换为对象
参数
- text: 要转换的字符串
- row: 允许转换器写入的IWriterRow接口可以访问configuration和上下文。
- memberMapData: 设置的映射数据,映射被转换的成员
DefaultTypeConverter
默认的转换器可以作为其他转换器的基类;
ConvertToString 将会使用任何设定好的格式化设置来在一个对象上调用ToString.
ConvertFromString 将会抛出一个 TypeConverterException. 实现DefaultTypeConverter的类需要覆盖这个方法,提供一个自己类型的实现.
TypeConverterOptions
TypeConverterCache
TypeConverterOptionsCache
Type Converters
这里有一些可用的转换器。大部分模仿的是 .NET类型转换器的做法,除了需要考虑configuration和映射设定之外。
ArrayConverter
BooleanConverter
ByteArrayConverter
ByteArrayConverterOptions
ByteConverter
CharConverter
CollectionGenericConverter
DateTimeConverter
DateTimeOffsetConverter
DecimalConverter
DoubleConverter
EnumConverter
EnumerableConverter
GuidConverter
IDictionaryConverter
IDictionaryGenericConverter
IEnumerableConverter
IEnumerableGenericConverter
Int16Converter
Int32Converter
Int62Converter
NullableConverter
SByteConverter
SingleConverter
StringConverter
TimeSpanConverter
UInt16Converter
UInt32Converter
UInt64Converter
ArrayConverter
转换多个字段到数据兑现成员或者反过来。
// Data
A,B,C,C,C
BooleanConverter
ByteArrayConverter
ByteArrayConverterOptions
ByteConverter
CharConverter
CollectionGenericConverter
DateTimeConverter
DateTimeOffsetConverter
DecimalConverter
DoubleConverter
EnumConverter
EnumerableConverter
GuidConverter
IDictionaryConverter
IDictionaryGenericConverter
IEnumerableConverter
IEnumerableGenericConverter
Int16Converter
Int32Converter
Int62Converter
NullableConverter
SByteConverter
SingleConverter
StringConverter
TimeSpanConverter
UInt16Converter
UInt32Converter
UInt64Converter
CsvHelper文档-6类型转换的更多相关文章
- CsvHelper文档-5配置
CsvHelper文档-5配置 CsvHelper库被设计成快速且简单易用,但是有时候默认的是设置不符合要求,需要你自己改变一些东西.所以csvHelper内置了很多自定义设置选项来改变读写行为.特别 ...
- CsvHelper文档-4映射
CsvHelper文档-4映射 类映射 有时候你的类成员和csv的header不一定对应,有时候你的csv文件根本就没有header行,你需要特别制定一个成员的index,你不能依靠.net中默认的顺 ...
- CsvHelper文档-3写
CsvHelper文档-3写 不用做任何设置,默认的情况下,csvhelper就可以很好的工作了.如果你的类的属性名称和csv的header名称匹配,那么可以按照下面的例子写入: var record ...
- CsvHelper文档-2读
CsvHelper文档-2读 这个库默认不需要做任何设置就可以很容易的使用它.如果你的类属性名称直接匹配csv的标题名称,那么可以按照下面的实例来用: (以下所有的代码都需要引用using csvhe ...
- CsvHelper文档-1前言
CsvHelper文档-1前言 英文文档链接地址:CsvHelper Document 开源项目地址:CsvHelper 翻译于2018-1-5,原本可能会随时更新: 每一段代码都是经过我实际测试的, ...
- python初步学习-查看文档及数据类型转换
学会查看文档 python最权威的文档就是官方文档,因此,我们要学会查看官方文档.而在python解释器中,help() 命令就可以很权威的查看官方文档. 因此,我们要学会使用 help() 命令. ...
- Kooboo CMS技术文档之一:Kooboo CMS技术背景
语言平台 依赖注入方案 存储模型 1. 语言平台 Kooboo CMS基于.NET Framework 4.x,.NET Framework 4.x的一些技术特性成为站点开发人员使用Kooboo CM ...
- SpingMVC 核心技术帮助文档
声明:本篇文档主要是用于参考帮助文档,没有实例,但几乎包含了SpringMVC 4.2版本的所有核心技术,当前最新版本是4.3,4.2的版本已经经是很新的了,所以非常值得大家一读,对于读完这篇文档感觉 ...
- KOTLIN开发语言文档(官方文档) -- 入门
网页链接:https://kotlinlang.org/docs/reference/basic-syntax.html 1. 入门 1.1. 基本语法 1.1.1. 定义包 包说明应该在源 ...
随机推荐
- python -- MySQLdb连接mysql数据库
1. python安装mysql $ pip install mysql-python 2. 数据库连接程序: import MySQLdb # 打开数据库连接db = MySQLdb.connect ...
- 【腾讯敏捷转型No.3】Scrum有什么好?
在敏捷转型的过程中,除了敏捷宣言中的四个价值观和十二条原则以外,并没有太多比较权威的理论实践. 如图一,敏捷宣言中的四个价值观: (图一) 四条敏捷核心价值观指出了敏捷的核心思想,但是并没有仔细说明具 ...
- H5页面手机端禁止缩放的正确方式
H5页面禁止手机端缩放是个常见问题了 首先说meta方式 <meta content="width=device-width, initial-scale=1.0, maximum-s ...
- python制作验证码
from PIL import Image, ImageFont, ImageDraw, ImageFilterfrom random import choice, randint # 随即配置颜色d ...
- 【2017 ICPC亚洲区域赛北京站 J】Pangu and Stones(区间dp)
In Chinese mythology, Pangu is the first living being and the creator of the sky and the earth. He w ...
- HCDA day1
OSI有几层: OSI将计算机网络体系结构(architecture)划分为以下七层: 图1.OSI模型 物理层: 将数据转换为可通过物理介质传送的电子信号 相当于邮局中的搬运工人. 物理层(Phys ...
- mysql-8.0.15允许外网访问
1.进MySQL之后, 2.输入以下语句,进入mysql库: use mysql3.更新域属性,'%'表示允许外部访问: update user set host='%' where user ='r ...
- CentOS7 minimal(最小化安装)后增加的软件安装
1.net-tools 安装,因为习惯使用ifconfig命令 2.wget安装,下载工具必不可少 3.vim安装,相比于vi个人更喜欢vim 4.yum-plugin-priorities安装,用于 ...
- Java中的代码块:局部代码块、构造代码块和静态代码块
代码块 java代码中用{ }括起来的代码段叫做代码块 1.局部代码块 在局部位置,用于限定变量的生命周期 例如,下面代码中的a仅在代码块中起作用,因此会编译报错 class Demo{ public ...
- CentOS7集成Apache和SVN
本文主要介绍如何在CentOS7环境下集成Apache和SVN,完成后可以通过浏览器访问SVN仓库. 1.查看系统环境,关闭防火墙和SELinux. [root@Docker /]# systemct ...