我想使用CSV类型提供程序按顺序存储目录中每个文件中列的总和。我正在使用以下代码,但是当我打印序列时它给了我不正确的值。当我将其写入只读一个文件时,它提供正确的值。当我尝试在目录中的所有文件上运行它时,我不知道发生了什么。
let dir = new DirectoryInfo("..\adr-financials\adr-sales")
type SalesReport = CsvProvider<"..\adr-financials\adr-sales\sales.txt", Separators="\t", IgnoreErrors=true>
let sales =
[for file in dir.GetFiles() do
let salesReport = SalesReport.Load(file.FullName)
let totalSales =
salesReport.Rows
|> Seq.map (fun row -> row.``Extended Partner Share``)
|> Seq.filter (fun elem -> not (Double.IsNaN (float(elem))))
|> Seq.sum
yield totalSales]
for sale in sales do
printfn "%f" sale
我也尝试在for循环中定义Csv Provider的地方编写它,但这给了我一个错误“表达式中此点或之前的不完整的结构化构造”