当我试图编译映射字符串数组为字符串
操作者我得到这个误差的阵列“EXPR。[IDX]”已被用于基于不确定 类型的对象上在这个节目点之前的信息。考虑加入 进一步的类型约束
这是代码
let convertFile fileName =
let arrayToTransaction (arr: string[]) =
arr
|> Array.map (fun x -> splitStr [|"\n"|])
|> Array.map
(fun x -> {
date = DateTime.Parse(x.[1]);
payee = x.[0].Substring(0, x.[0].IndexOf(','))
category = "Everyday Expenses: Groceries/Food"
memo = "Parsed with my F# parser"
outflow = Single.Parse(x.[2].Substring(str.IndexOf('-') + 1))
inflow = 0.0f
})
这不起作用,不幸的是,它说。 '这个表达式预计有 字符串 - >字符串[] ,但这里有 string []'。这对我来说没有什么意义,因为数组是字符串的集合。 – 2014-11-06 21:14:13
问题是您的'splitStr'调用较早的一行。你根本没有传入'x'字符串。 – scrwtp 2014-11-06 21:26:10
是的,我在你发布的同一时间计算出来。我以为lambda会“管”x到'splitStr'唉,它似乎并不如此。 – 2014-11-06 21:28:13