Opening .dat (tab delimited file) in Excel, save as .xls

前端 未结 4 1572
无人及你
无人及你 2021-01-14 16:39

I am trying to open a .dat file in Excel, which is tab delimited, and then have it save out as a .xls file.

So far, I can read in the file and save it as the .xls fi

相关标签:
4条回答
  • 2021-01-14 17:26

    This sould work:

    using Excel = Microsoft.Office.Interop.Excel;
    using Microsoft.Office;
    using Microsoft.Office.Core;
    
            Excel.Application xlApp;
            Excel.Workbook xlWorkBook;
            Excel.Worksheet xlWorkSheet;
            object misValue = System.Reflection.Missing.Value;
            xlApp = new Excel.Application();
            xlApp.Workbooks.OpenText(@"c:\data.txt", Microsoft.Office.Interop.Excel.XlTextParsingType.xlDelimited);
            xlApp.Visible = true;
    
    0 讨论(0)
  • 2021-01-14 17:29

    The fix for this question:

    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);

    In the xlApp.Worksbooks.Open() method, the fourth arg is "Format" which if you use the value '1', it will assume that the file is tab delimited and open it accordingly.

    0 讨论(0)
  • 2021-01-14 17:31

    I don't use C#, but I'm thinking you might need to use something like Workbooks.OpenText method detailed here: http://msdn.microsoft.com/en-us/library/bb223513%28v=office.12%29.aspx

    It allows you to specify delimiters, etc.

    Something like this:

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

    That's from the Excel 2007 Developer reference, but maybe there's a similar method in C#? Just a guess.

    0 讨论(0)
  • 2021-01-14 17:41

    How about using FileHelpers ?

    I have used this approach a lot, and find it a super nice library.

    It handles delimited and fixed length files, and you can write back to Excel using the ExcelStorage class.

    0 讨论(0)
提交回复
热议问题