您可以通过以下两种方法之一来做到这一点。
第一种方法:
使用此代码将文本文件转换为 csv 文件
using System.IO;
void ConvertToCsv(string sourcefile, string destfile)
{
int i, j;
StreamWriter csvfile;
string[] lines, cells;
lines = File.ReadAllLines(sourcefile);
csvfile = new StreamWriter(destfile);
for (i = 0; i < lines.Length; i++)
{
cells = lines[i].Split(new Char[] { '\t', ';' });
for (j = 0; j < cells.Length; j++)
csvfile.Write(cells[j] + ",");
csvfile.WriteLine();
}
csvfile.Close();
}
然后打开这个文件并保存为xlsx文件。
第二种方法:
使用此代码将文本文件直接转换为 xlsx 文件。
using System.IO;
using Excel = Microsoft.Office.Interop.Excel;
void ConvertToXlsx(string sourcefile, string destfile)
{
int i, j;
Excel.Application xlApp;
Excel.Workbook xlWorkBook;
Excel._Worksheet xlWorkSheet;
object misValue = System.Reflection.Missing.Value;
string[] lines, cells;
lines = File.ReadAllLines(sourcefile);
xlApp = new Excel.Application();
xlApp.DisplayAlerts = false;
xlWorkBook = xlApp.Workbooks.Add();
xlWorkSheet = (Excel._Worksheet)xlWorkBook.ActiveSheet;
for (i = 0; i < lines.Length; i++)
{
cells = lines[i].Split(new Char[] { '\t', ';' });
for (j = 0; j < cells.Length; j++)
xlWorkSheet.Cells[i + 1, j + 1] = cells[j];
}
xlWorkBook.SaveAs(destfile, Excel.XlFileFormat.xlWorkbookDefault, misValue, misValue, misValue, misValue, Excel.XlSaveAsAccessMode.xlExclusive, misValue, misValue, misValue, misValue, misValue);
xlWorkBook.Close(true, misValue, misValue);
xlApp.Quit();
}
不要忘记添加此参考。
项目 > 添加参考 > 程序集 > 扩展
选择“Microsoft.Office.Interop.Excel”
您还可以对值进行所需的检查并将它们写入单独的文件。