嗨,我希望找到使用F#读取固定宽度文本文件的最佳方法.该文件将是纯文本,从一行到几千行,宽约1000个字符.每行包含大约50个字段,每个字段具有不同的长度.我最初的想法是有类似以下的东西
type MyRecord = {
Name : string
Address : string
Postcode : string
Tel : string
}
let format = [
(0,10)
(10,50)
(50,7)
(57,20)
]
Run Code Online (Sandbox Code Playgroud)
并逐个读取每一行,按格式元组分配每个字段(第一项是起始字符,第二项是宽字符数).
任何指针将不胜感激.
我正在努力学习F#,但我一直在遇到问题.最新的是使用异步.在下面的代码中,我正在尝试运行两个长时间运行的操作并根据结果执行计算但是我收到错误"Async不支持+运算符".我已经尝试过铸造等让它工作,但我没有得到任何快速.
有人可以解释我哪里出错了.
谢谢.
let SumOfOpFaults =
async{
printfn "Getting Sum of Op Faults"
return query {
for a in AlarmResult do
sumBy a.UserFaultTime
}
}
let SumOfMcFaults =
async{
printfn "Getting Sum of Machine Faults"
return query {
for a in AlarmResult do
sumBy a.MachineFaultTime
}
}
[SumOfMcFaults; SumOfOpFaults]
|> Async.Parallel
|> Async.RunSynchronously
|> ignore
let total = SumOfOpFaults + SumOfMcFaults // <---Error Here
Run Code Online (Sandbox Code Playgroud)