EXCEL
using NPOI.SS.UserModel;
using NPOI.XSSF.UserModel;
using System.Data;
using System.IO;
public class ExcelService
{
public string GenerateExcelFileAndReturnPath(DataTable dataTable)
{
IWorkbook workbook = new XSSFWorkbook();
ISheet sheet = workbook.CreateSheet("Sheet1");
// 写入列名
IRow headerRow = sheet.CreateRow(0);
foreach (DataColumn column in dataTable.Columns)
{
headerRow.CreateCell(column.Ordinal).SetCellValue(column.ColumnName);
}
// 写入数据
int rowIndex = 1;
foreach (DataRow row in dataTable.Rows)
{
IRow dataRow = sheet.CreateRow(rowIndex);
foreach (DataColumn column in dataTable.Columns)
{
dataRow.CreateCell(column.Ordinal).SetCellValue(row[column].ToString());
}
rowIndex++;
}
// 保存到服务器指定路径
string filePath = "path/to/save/file.xlsx";
using (FileStream fileStream = new FileStream(filePath, FileMode.Create))
{
workbook.Write(fileStream);
}
return filePath; // 返回文件路径
}
}
生成CSV文件
using System.Data;
using System.IO;
using System.Text;
public class CsvService
{
public string GenerateCsvFileAndReturnPath(DataTable dataTable)
{
StringBuilder sb = new StringBuilder();
// 写入列名
foreach (DataColumn column in dataTable.Columns)
{
sb.Append(column.ColumnName + ",");
}
sb.AppendLine();
// 写入数据
foreach (DataRow row in dataTable.Rows)
{
foreach (DataColumn column in dataTable.Columns)
{
sb.Append(row[column].ToString() + ",");
}
sb.AppendLine();
}
// 保存到服务器指定路径
string filePath = "path/to/save/file.csv";
File.WriteAllText(filePath, sb.ToString());
return filePath; // 返回文件路径
}
}