1 回答

TA貢獻1817條經驗 獲得超6個贊
有幾種可能:
1)使用圖書館
似乎有一個庫可以讀取 SPSS 文件。
您可以安裝 NuGet 包SpssLib并SpssReader從FileStream
using(var fileStream = File.OpenRead("spss-file.sav"))
{
var spssReader = new SpssReader(fileStream);
// read variable names from spssReader.Variables and store to CSV
// read records from spssReader.Records and store to CSV
}
2) 手動編碼解決方案
如果您因任何原因無法使用該庫,您可以手動編寫一個解決方案。
2.1)看看PSPP
如果(且僅當)您計劃(或至少可以)在 GPL 下發布您的代碼,您可以查看 PSPP 源代碼。無論如何,如果你不能 GPL 你的代碼,不要。做。它。改為在潔凈室實施,否則您將始終處于濕滑的地面上。
2.2)看看規范
有一個關于 SAV 文件格式的在線文檔。這可能需要一些時間,但您最終可能會弄清楚如何將其轉換為 CSV。
3)使用PSPP
如果您在運送 GPL 軟件時沒有問題(或者能夠以某種方式按需下載文件),您可以使用 PSPP 控制臺應用程序。PSPP 是 SPSS 的 GNU 替代品,它旨在(但尚未)提供 SPSS 所提供的功能。顯然它帶有一個方便的小 CLI 工具pspp-convert(請參閱文檔)。您可以通過命令行調用它
pspp-convert input.sav output.csv
在Process類的幫助下,您可以啟動另一個進程(即本例中的程序)。如果pspp-convert位于當前目錄或PATH變量中的任何目錄中,則將文件轉換為 CSV 非常簡單
public ConvertSpssFile(string inputFile)
{
var outputFile = Path.ChangeExtension(inputFile, "csv");
Process.Start("pspp-convert", $"{inputFile} {outputFile}");
}
- 1 回答
- 0 關注
- 580 瀏覽
添加回答
舉報