【插件】【干货】用EPPlus在Unity中读写Excel表
EPPlus是什么我就不说了,你都点进来了肯定知道
几个常用的api
1.index下标都是从1开始的
2.可以读取任意单元格上的任意内容,不需要给excel表写规则
但是如果你写了规则,就需要自己用额外的代码 --- 数据结构去实现
3.打开excel表 ExcelPackage package = new ExcelPackage(需要打开的excel文件)
4. 获取工作表 ExcelWorksheet sheet = package.Workbook.Worksheets[index];
5.获取工作表的行数和列数 sheet.Dimension.End.Row; sheet.Dimension.End.Column;
6.将数据写入表 sheet.Cells[Row, Column].Value =value ;
7.从集合加载数据到工作表
var data = new List<Person> { new Person { Name = "Alice", Age = 30 } };
sheet.Cells["A1"].LoadFromCollection(data, true);
8.从文本文件中加载数据
sheet.Cells["A1"].LoadFromText("Name, Age\nAlice, 30\nBob, 25");
9.保存表 package.Save();
导入
EPPlusSoftware/EPPlus: EPPlus-Excel spreadsheets for .NET (github.com)
Excel表
读表例子
using OfficeOpenXml;
using System.Collections;
using System.Collections.Generic;
using System.IO;
using UnityEngine;
using OfficeOpenXml;
public class Read : MonoBehaviour
{
// Unity的Start方法,在游戏开始时调用
void Start() {
ReadExcel(); // 调用读取Excel文件的方法
}
// 读取Excel文件的方法
void ReadExcel() {
// 获取Excel文件的路径
string path = Application.dataPath + "/Excel/Text.xlsx";
FileInfo fileInfo = new FileInfo(path); // 创建FileInfo对象
// 使用EPPlus库打开Excel文件
using (ExcelPackage package = new ExcelPackage(fileInfo)) {
// 获取第一个工作表
ExcelWorksheet sheet = package.Workbook.Worksheets[1];
// 获取工作表的行数和列数
int rowCount = sheet.Dimension.End.Row;
int colCount = sheet.Dimension.End.Column;
// 遍历工作表的每一行和每一列
for (int row = 1; row <= rowCount; row++) // 从第二行开始,跳过标题行
{
for (int col = 1; col <= colCount; col++) {
// 如果单元格不为空,打印其内容
if (sheet.Cells[row, col].Value != null) {
Debug.Log(sheet.Cells[row, col].Value.ToString());
}
}
}
}
}
}
写表例子
using System.IO; // 引入系统IO命名空间,用于文件操作
using UnityEngine; // 引入Unity引擎命名空间
using OfficeOpenXml; // 引入EPPlus命名空间,用于操作Excel文件
public class ExcelHandler : MonoBehaviour
{
void Start()
{
WriteExcel();
}
void WriteExcel()
{
string path = Application.dataPath + "/Excel/Text.xlsx";
FileInfo fileInfo = new FileInfo(path);
using (ExcelPackage package = new ExcelPackage(fileInfo))
{
ExcelWorksheet sheet = package.Workbook.Worksheets.Count == 0 ? package.Workbook.Worksheets.Add("Sheet1") : package.Workbook.Worksheets[0];
sheet.Cells[1, 1].Value = "ID";
sheet.Cells[1, 2].Value = "Name";
sheet.Cells[1, 3].Value = "Age";
sheet.Cells[2, 1].Value = 1;
sheet.Cells[2, 2].Value = "Alice";
sheet.Cells[2, 3].Value = 30;
sheet.Cells[3, 1].Value = 2;
sheet.Cells[3, 2].Value = "Bob";
sheet.Cells[3, 3].Value = 25;
package.Save();
}
Debug.Log("Excel文件写入完成!");
}
}
原文地址:https://blog.csdn.net/2301_77947509/article/details/142218932
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!