使用double,double验证简单的CSV文件

时间:2011-11-04 12:59:09

标签: c# .net validation csv

在我的程序中,我想导入只应该有一对双打的csv文件。类似的东西:

2.2131321321, 32.321321321
3.31321321321, 65.65454545
4.12321351351, 16.13211212

你能帮助找到一种安全快捷的方法吗?

1 个答案:

答案 0 :(得分:4)

最简单的方法是逐行读取文件,将每一行拆分为,并尝试使用double.TryParse

解析每个部分

简单示例,假设文件有效(没有检查):

public static IEnumerable<Tuple<double, double>> ReadCSV(string filePath)
{
    using (var reader = new StreamReader(filePath))
    {
        string line;
        while ((line = reader.ReadLine()) != null)
        {
            var split = line.Split(new[] { ',' },
                StringSplitOptions.RemoveEmptyEntries);

            yield return new Tuple<double, double>(
                double.Parse(split[0], CultureInfo.InvariantCulture),
                double.Parse(split[1], CultureInfo.InvariantCulture));
        }
    }
}