我试图在Excel中打开一个.dat文件,该文件用制表符分隔,然后将其另存为.xls文件。

到目前为止,我可以读取文件并将其另存为.xls文件,但是由于某种原因,所有值都在第一列中,并且它不能用Tab键分隔它们。

(如果我在不使用程序的情况下在Excel中打开文件,则它会以Tab键定界)

这是我用来打开和重新保存文件的两行代码。

xlWorkBook = xlApp.Workbooks.Open(f, 0, true, 5, "", "", true, Microsoft.Office.Interop.Excel.XlPlatform.xlWindows, "\t", false, false, 0, true, 1, 0);
xlWorkBook.SaveAs(filename + ".xls", Excel.XlFileFormat.xlWorkbookNormal, misValue, misValue, misValue, misValue, Excel.XlSaveAsAccessMode.xlExclusive, misValue, misValue, misValue, misValue, misValue);

最佳答案

我不使用C#,但我认为您可能需要使用类似Workbooks.OpenText方法的方法,在这里详细介绍:
http://msdn.microsoft.com/en-us/library/bb223513%28v=office.12%29.aspx

它允许您指定定界符等。

像这样:

xlWorkBook = xlApp.Workbooks.OpenText (filename:="DATA.TXT", dataType:=xlDelimited, tab:=True);


这来自Excel 2007 Developer参考,但是C#中可能有类似的方法?只是一个猜测。

09-20 18:54