2015-07-21 126 views
-4

我對C#很新,希望這是一個簡單的問題。沒有找到我需要的谷歌C#文件打開/轉換並保存

我有一個文件C:\ test \ losses.csv 我想打開然後轉換爲xlsx文件並保存在不同的目錄中。 保存到 C:\ test \ Losses.xlsx 打開文件的原因是move命令不會將其轉換爲xlsx,不幸的是它保持與csv相同的結構,並且在該格式中不可用。 File.Copy(@「C:\ test \ losses.csv」,@「C:\ test1 \ Losses.xlsx」); 上面的代碼很好,但仍然是一個csv文件(實際上是一個混合的)。這是另一個SAP故事。
任何幫助將不勝感激。謝謝

+0

這是不是很清楚你問。你從一個CSV開始,你想將其轉換爲xlsx?你必須使用office interop才能做到這一點,只是複製它無助於你。通過複製或移動它,充其量你可能會意外更改元數據,以便excel以不同的方式對待它。 – NibblyPig

+0

您將不得不使用庫將其轉換爲實際的Excel文件。 –

+0

更改文件擴展名不會更改文件的/格式/。一個簡單的解決方案是在Excel中打開文件,然後將其保存爲'xlsx'。 – Logan

回答

0

File.Copy只複製文件 - 類似於在DOS或Windows文件瀏覽器中複製文件。

您需要將您的CSV轉換爲XLSX文件。格式應該是相當直接的,但你需要做更多的研究:

  1. 裝入CSV作爲數據表
  2. 使用Excel.XlFileFormat.xlOpenXMLWorkbook類文件翻譯。

不同的StackOverflow的問題解決了如何使用xlOpenXMLWorkbook: Exporting to .xlsx using Microsoft.Office.Interop.Excel SaveAs Error

希望這有助於。祝你好運。

+0

即是。謝謝 – ajolson1964

+0

我喜歡Stas Berkov發佈的更好的鏈接來解決這個問題 - 但我想保留對我發佈的鏈接的引用,因爲它突出了新編碼器,就像你自己一樣,有時一個明顯的解決方案不是正確的。挖掘並熟悉各種API是解決編碼解決方案的最佳方法。 – Paurian