Unity 打包exe 读写Excel表格文件
生活随笔
收集整理的這篇文章主要介紹了
Unity 打包exe 读写Excel表格文件
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
Unity 在運行的時候讀取用戶配置信息,在應用內(nèi)導出需要保存的信息到Excel 表格
1、導入Excel 讀取插件
2、導入打開Windows文件以及文件夾工具(之前有寫過)?
3、使用方法
1)、新建腳本,并定義參數(shù)?
public Button saveBtn;public Button readBtn;private Action<string> readAction;private Action<string> saveAction;public Text des;2)、事件的綁定?
private void Start(){saveBtn.onClick.AddListener(OpenFolder);readBtn.onClick.AddListener(OpenFile);saveAction += SaveFile;readAction += GetFile;}3)、功能的實現(xiàn)
public void OpenFile(){Mark.OpenDialogHelper.SelectFile(readAction, "Excel文件(*.xlsx*)\0*.xlsx*"); // FBX文件(*.fbx)\0*.fbx\0}public void OpenFolder(){Mark.OpenDialogHelper.SelectFolder(saveAction);}private void GetFile(string filePath){Debug.Log(filePath);Read(filePath);}private void SaveFile(string filePath){Debug.Log(filePath);Create(filePath);}private void Create(string path){if (Directory.Exists(path)){string ph = path + "/" + "Tex2.xlsx";FileInfo newFile = new FileInfo(ph);if (newFile.Exists){newFile.Delete();newFile = new FileInfo(ph);}using (ExcelPackage package = new ExcelPackage(newFile)){ExcelWorksheet worksheet = package.Workbook.Worksheets.Add("ModelInfo");//創(chuàng)建worksheetCreateTitle(worksheet);CreateContent(worksheet);package.Save();}}}private void Read(string path){StringBuilder sb = new StringBuilder();using (FileStream fs = new FileStream(path, FileMode.Open, FileAccess.Read)){sb.Clear();using (ExcelPackage ep = new ExcelPackage(fs)){//獲取所有的表 E:\Test\Text.xlsxStringBuilder sb1 = new StringBuilder();ExcelWorksheets worksheets = ep.Workbook.Worksheets;for (int i = 1; i <= worksheets.Count; i++){//當前工作表 ExcelWorksheet sheet = worksheets[i];//當前工作表 有多少 列int columCount = sheet.Dimension.End.Column;//當前工作表 有多少 行int rowCount = sheet.Dimension.End.Row;//從第幾行\(zhòng)第幾列開始讀數(shù)據(jù) ,視具體情況決定int startRow = 2;int startColum = 1;for (int j = startRow; j <= rowCount; j++){sb1.Clear();for (int k = startColum; k <= columCount; k++){if (!string.IsNullOrEmpty(sheet.Cells[j, k].Text)){sb1.Append(sheet.Cells[j, k].Text+" ");}}string str = $"當前Excel表的第{i}張表格讀取:第 {j} 行數(shù)據(jù) :{sb1.ToString()}\n";sb.Append(str);}}}des.text = sb.ToString();}}private void CreateTitle(ExcelWorksheet worksheet){worksheet.Cells[1, 1].Value = "序號";worksheet.Cells[1, 2].Value = "名稱";worksheet.Cells[1, 3].Value = "數(shù)量";worksheet.Cells[1, 4].Value = "單位";worksheet.Cells[1, 5].Value = "單價";worksheet.Cells[1, 6].Value = "合價";worksheet.Cells[1, 7].Value = "備注";}private void CreateContent(ExcelWorksheet worksheet){for (int i = 2; i <= 5; i++){for (int j = 1; j <= 5; j++){worksheet.Cells[i, j].Value = i * j;}}}4、效果展示
總結(jié)
以上是生活随笔為你收集整理的Unity 打包exe 读写Excel表格文件的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 数字化变电站建设方案
- 下一篇: 金山词霸和卡巴斯基冲突