有没有办法知道一个列的确切类型DataTable
?现在我这样做:
DataTable st = dataReader.GetSchemaTable();
foreach (DataColumn col in st.Columns)
{
var type = col.DataType;
}
Run Code Online (Sandbox Code Playgroud)
现在用type.Name
我能找到,如果它是一个数字(int
或decimal
..)或string
,但问题是我需要的确切类型,例如,如果在数据库中让说列Rate
是NUMBER(4,3)
那么这里我的代码,我只得到类型为"十进制'并且没有关于格式的信息4,3
.
现在要求是我需要根据类型格式化值,例如.如果Rate=1.4
它应显示为0001.400
(根据格式NUMBER(4,3)
).因此,因为我没有信息,所以我无法进一步处理这些值.反正知道一样吗?
谢谢
我有一个固定长度的文件,并希望将其数据读入类对象.这些对象将进一步用于在数据库中插入/更新数据.虽然可以使用StreamReader完成,但我正在寻找更复杂的解决方案.FileHelper是另一种解决方案,但我不想在我的程序中使用开源代码.还有其他选择吗?
在下面的链接中,有一个用户回答了这个类似的问题,但没有详细说明:
https://codereview.stackexchange.com/questions/27782/how-to-read-fixed-width-data-fields-in-net
我试图实现这个,但我找不到Layout()属性.
谢谢.
样本固定长度文件:
aCSTDCECHEUR20140701201409161109 //Header of the file
b0000000000050115844085700800422HB HERBOXAN-COMPACT WHITE 12,5L 0000002297P0000000184L0000000000 0000000000
zCSTDCECH201409161109 148 //Footer of the file
Run Code Online (Sandbox Code Playgroud)