使用属性将 YYYYMMDD 字符串转换为日期
Convert YYYYMMDD string to Date using Attributes
我正在使用 FileHelper 从 CSV 文件填充数据。
该文件的日期为 YYYYMMDD 字符串。
例如
19880312,20120505,20121231 ...
相同的模型是
class PatientData
{
public DateTime DateOfBirth{get;set;}
//Some Other Columns
}
导入代码是:
FileHelperEngine engine = new FileHelperEngine(typeof(PatientData));
PatientData[] clientes = (PatientData[])engine.ReadFile(@"Path to CSV");
我遇到的问题是 20121212 被转换为 20th Dec 1212 (DDMMYYYY) 而不是 YYYYMMDD。
尝试在 DateTime 上使用属性,但不知道如何获取其中的初始字符串值。
TIA
使用FieldConverterAttribute and ConverterKind并这样装饰你的属性:
[FieldConverter(ConverterKind.Date, "yyyyMMdd")]
您需要用 FieldConverterAttribute
注释您的 属性。这里有一个link到官方文档http://www.filehelpers.net/quickstart/
像这样的东西就可以了。
public class PatientData
{
[FieldConverter(ConverterKind.Date, "yyyyMMdd")]
public DateTime DateOfBirth{ get; set; }
//Some Other Columns
}
注意您的日期格式字符串。检查选项的完整列表 here。 c# 中没有大写的 YYYY 模式。
我正在使用 FileHelper 从 CSV 文件填充数据。 该文件的日期为 YYYYMMDD 字符串。
例如
19880312,20120505,20121231 ...
相同的模型是
class PatientData
{
public DateTime DateOfBirth{get;set;}
//Some Other Columns
}
导入代码是:
FileHelperEngine engine = new FileHelperEngine(typeof(PatientData));
PatientData[] clientes = (PatientData[])engine.ReadFile(@"Path to CSV");
我遇到的问题是 20121212 被转换为 20th Dec 1212 (DDMMYYYY) 而不是 YYYYMMDD。
尝试在 DateTime 上使用属性,但不知道如何获取其中的初始字符串值。
TIA
使用FieldConverterAttribute and ConverterKind并这样装饰你的属性:
[FieldConverter(ConverterKind.Date, "yyyyMMdd")]
您需要用 FieldConverterAttribute
注释您的 属性。这里有一个link到官方文档http://www.filehelpers.net/quickstart/
像这样的东西就可以了。
public class PatientData
{
[FieldConverter(ConverterKind.Date, "yyyyMMdd")]
public DateTime DateOfBirth{ get; set; }
//Some Other Columns
}
注意您的日期格式字符串。检查选项的完整列表 here。 c# 中没有大写的 YYYY 模式。