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类型转换的更多相关文章

  1. CsvHelper文档-5配置

    CsvHelper文档-5配置 CsvHelper库被设计成快速且简单易用,但是有时候默认的是设置不符合要求,需要你自己改变一些东西.所以csvHelper内置了很多自定义设置选项来改变读写行为.特别 ...

  2. CsvHelper文档-4映射

    CsvHelper文档-4映射 类映射 有时候你的类成员和csv的header不一定对应,有时候你的csv文件根本就没有header行,你需要特别制定一个成员的index,你不能依靠.net中默认的顺 ...

  3. CsvHelper文档-3写

    CsvHelper文档-3写 不用做任何设置,默认的情况下,csvhelper就可以很好的工作了.如果你的类的属性名称和csv的header名称匹配,那么可以按照下面的例子写入: var record ...

  4. CsvHelper文档-2读

    CsvHelper文档-2读 这个库默认不需要做任何设置就可以很容易的使用它.如果你的类属性名称直接匹配csv的标题名称,那么可以按照下面的实例来用: (以下所有的代码都需要引用using csvhe ...

  5. CsvHelper文档-1前言

    CsvHelper文档-1前言 英文文档链接地址:CsvHelper Document 开源项目地址:CsvHelper 翻译于2018-1-5,原本可能会随时更新: 每一段代码都是经过我实际测试的, ...

  6. python初步学习-查看文档及数据类型转换

    学会查看文档 python最权威的文档就是官方文档,因此,我们要学会查看官方文档.而在python解释器中,help() 命令就可以很权威的查看官方文档. 因此,我们要学会使用 help() 命令. ...

  7. Kooboo CMS技术文档之一:Kooboo CMS技术背景

    语言平台 依赖注入方案 存储模型 1. 语言平台 Kooboo CMS基于.NET Framework 4.x,.NET Framework 4.x的一些技术特性成为站点开发人员使用Kooboo CM ...

  8. SpingMVC 核心技术帮助文档

    声明:本篇文档主要是用于参考帮助文档,没有实例,但几乎包含了SpringMVC 4.2版本的所有核心技术,当前最新版本是4.3,4.2的版本已经经是很新的了,所以非常值得大家一读,对于读完这篇文档感觉 ...

  9. KOTLIN开发语言文档(官方文档) -- 入门

    网页链接:https://kotlinlang.org/docs/reference/basic-syntax.html 1.   入门 1.1.  基本语法 1.1.1.   定义包 包说明应该在源 ...

随机推荐

  1. ASP.NET如何批量保存动态生成的文本框?

    对于OA系统,表单签核功能必不可少.而根据公司的情况,表单自然又五花八门,所以就要求能够让用户自己建立表单并设定表单的流程.填写内容等等.我之前写过一篇文章[地址:pivot的用法(SQL SERVE ...

  2. Centos 7下Nagios的安装及配置

    简介 Nagios 是一款自动化运维工具,可以协助运维人员监控服务器的运行状况,并且拥有报警功能.本文章将介绍其安装方法和详细的配置方法. nagios 监控服务应用指南 本地资源:负载,CPU,磁盘 ...

  3. SwaggerUI用户手册

    SwaggerUI是一个非常好用的API文档工具,最关键的是他还能在工具内调试API,简直爽的不要不要的~网上针对开发者的文档非常多,但是给用户的手册却非常少.所以我来简单写个用户手册,供没有使用过s ...

  4. spring boot 输入参数统一校验

    1 引入spring boot validate    maven 依赖 <!-- 验证 --> <dependency> <groupId>org.hiberna ...

  5. iOS12适配及问题记录,Debug正常使用,Release数据为nil的报错

    Debug模式数据一切正常,打包出去的ipa,Release模式下数据为nil的错误,经排查,buiding中的Optimization Level, Release设为None,解决问题. IOS1 ...

  6. 轻量ORM-SqlRepoEx (十六)最佳实践之Dapper(2)

    简介:SqlRepoEx是 .Net平台下兼容.NET Standard 2.0人一个轻型的ORM.解决了Lambda转Sql语句这一难题,SqlRepoEx使用的是Lambda表达式,所以,对c#程 ...

  7. WebClient 下载图片(文件)

    public static string SaveImage(string url, string newfilename) { WebClient mywebclient = new WebClie ...

  8. 25条提高iOS App性能的技巧和诀窍

    25条提高iOS App性能的技巧和诀窍 当我们开发iOS应用时,好的性能对我们的App来说是很重要的.你的用户也希望如此,但是如果你的app表现的反应迟钝或者很慢也会伤害到你的审核. 然而,由于IO ...

  9. LR分析-demo2

    0.LR分析 用一个栈来保存文法符号和状态的信息,一个字符串保存输入信息. 使用栈顶的状态符号和当前的输入符号来检索分析表,来决定移进-归约分析的动作. 1.样例文法 "E>E+T&q ...

  10. C++ primer第三章作业

    3.1节 练习3.1: 使用恰当的using声明重做1.4.1节(第11页)和2.6.2节(第67页)的练习 #ifdef 1 #include <iostream> using std: ...