使用 FSharpx.TypeProviders.Excel 类型提供程序的方法
#r "FSharpx.TypeProviders.Excel.dll"
type Excel = FSharpx.ExcelFile< "booktest.xls", "Sheet1", true >
let excel = Excel()
excel.Data
|> Seq.iter (fun i -> printfn "%A" i.OFFER)
前面的两名也可以合并成一句:
let excel = new FSharpx.ExcelFile< "booktest.xls", "Sheet1", true >()
而且,这样定义后,还可以放在函数内。
有两个问题折腾我好长时间:
1、Sheet1 的大小写一定要与文件中保持一致。
2、打开文件的默认目录有时是程序目录,有时是 %temp%,而且好像不稳定,真是莫名其妙。
且不能用昨天的方法进行修改:
System.Environment.CurrentDirectory <- __SOURCE_DIRECTORY__
经过无数次的试验,发现正确的步骤是这样的:
先执行 type Excel = FSharpx.ExcelFile< "BookTest.xls", "Sheet1", true >
然后,再引用 FSharpx.TypeProviders.Excel.dll
再重新执行 type Excel = FSharpx.ExcelFile< "BookTest.xls", "Sheet1", true >
这样,就不会再到 %temp% 目录下去找这个文件了。
使用 FSharpx.TypeProviders.Excel 类型提供程序的方法
原文:http://blog.csdn.net/hadstj/article/details/18943525