如何使用移位小数分隔符将数字转换为十进制?

时间:2016-05-11 20:54:26

标签: c# csv filehelpers file-import

我必须导入一个具有以下格式数量的文件:

Id    Amount
101   123456 
102   456789

我使用带有FileHelpers属性的[FieldConverter(ConverterKind.Decimal)]库,但它会将金额转换为此内容:

12356 --> $123456

我希望它将最后两位数应用于小数。我希望它看起来像这样:

123456 --> $1234.56
456789 --> $4567.89

有什么想法吗?感谢。

更新:我提出了自己的解决方案。我创建了一个名为Amount的单独字段,根据文件中提供的金额计算付款金额,该金额会被解析为名为AmountRaw的私有变量。

[DelimitedRecord(",")]
public class PaymentFileRecord
{
    public int PaymentId;

    [FieldConverter(ConverterKind.Date, "yyyyMMdd")]
    public DateTime PaymentDate;

    [FieldConverter(ConverterKind.Decimal)]
    private decimal AmountRaw;

    public decimal Amount
    {
        get { return AmountRaw / 100; }
    }
}

1 个答案:

答案 0 :(得分:1)

试试这个:将你收到的数字除以100。