Unity笔记之Unity读取/写入Excel
此前必须导入EPPlus.dll、Excel.dll、ICSharpCode.SharpZipLib.dll这三个dll
读取Excel内容
/// <summary>
/// 表格纵向总数
/// </summary>
public static int rowCount { get; private set; }
/// <summary>
/// 表格横向总数
/// </summary>
public static int columnsCount { get; private set; }
/// <summary>
/// 读取 Excel ; 需要添加 Excel.dll; System.Data.dll;
/// </summary>
/// <param name="excelName">excel文件名</param>
/// <param name="sheetName">sheet名称</param>
/// <returns>DataRow的集合</returns>
public static DataTableCollection Read(string excelPath, string excelName, string sheetName)
{
string path = excelPath + "/" + excelName;
Debug.Log(path);
//string path = Application.dataPath + "/" + excelName;
FileStream stream = File.Open(path, FileMode.Open, FileAccess.Read, FileShare.Read);
IExcelDataReader excelReader = ExcelReaderFactory.CreateOpenXmlReader(stream);
DataSet result = excelReader.AsDataSet();
//int columns = result.Tables[0].Columns.Count;
//int rows = result.Tables[0].Rows.Count;
rowCount = result.Tables[sheetName].Rows.Count;
columnsCount = result.Tables[sheetName].Columns.Count;
//tables可以按照sheet名获取,也可以按照sheet索引获取
//return result.Tables[0].Rows;
return result.Tables;
}
写入/修改Excel内容
/// <summary>
/// Excel修改指定位置的内容
/// </summary>
/// <param name="excelPath">Excel路径</param>
/// <param name="excelName">Excel名字</param>
/// <param name="sheetName">Excel的Sheet名字</param>
/// <param name="row">行</param>
/// <param name="column">列</param>
/// <param name="context">修改后的内容</param>
public static void Write(string excelPath, string excelName, string sheetName, int row, int column,
string context)
{
string path = excelPath + "/" + excelName;
FileInfo newFile = new FileInfo(path);
//删除此表格重新创建一个新的Excel(视情况而定是否需要)
// if (newFile.Exists)
// {
// newFile.Delete();
// newFile = new FileInfo(path);
// }
using (ExcelPackage package = new ExcelPackage(newFile))
{
ExcelWorksheet worksheet = package.Workbook.Worksheets.Add(sheetName);
worksheet.Cells[row, column].Value = context;//自己检查有没有搞反
package.Save();
}
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律