public void LoadCSSettingConfig() { var configFilePath = Application.dataPath + "/Editor/ExcelExportTool/Config/SettingConfig.xml"; FileInfo fileInfo = new FileInfo(configFilePath); var lastFileWriteTime = EditorTimeUtility.DateTimeToUnixTimesStamp(fileInfo.LastWriteTimeUtc); if (lastFileWriteTime != m_ConfigFileChangeTime) { m_ConfigFileChangeTime = lastFileWriteTime; var xmlDoc = new XmlDocument(); xmlDoc.Load(configFilePath); var nodeList = xmlDoc.SelectSingleNode("root").ChildNodes; foreach (var childNode in nodeList) { var childElement = (XmlElement)childNode; if (childElement.Name == "ExcelExportDirectory") { m_ExcelExportDirectory = childElement.InnerText; } else if (childElement.Name == "XmlExportDirectory") { m_XmlExportDirectory = childElement.InnerText; } else if (childElement.Name == "XmlBinExportDirectory") { m_XmlBinExportDirectory = childElement.InnerText; } else if (childElement.Name == "CsExportDirectory") { m_CsExportDirectory = childElement.InnerText; } } } }
private void ReloadExcelFileInfo(string excelPath, string title) { FileInfo fileInfo = new FileInfo(excelPath); var lastFileWriteTime = EditorTimeUtility.DateTimeToUnixTimesStamp(fileInfo.LastWriteTimeUtc); if (lastFileWriteTime != m_ExcelFileChangeTime) { m_Title = title; m_ExcelPath = excelPath; Workbook workbook = new Workbook(m_ExcelPath); m_WorksheetNum = workbook.Worksheets.Count; m_WorksheetShowList = new List <bool>(m_WorksheetNum); m_WorksheetNameList = new List <string>(m_WorksheetNum); for (int i = 0; i < m_WorksheetNum; i++) { m_WorksheetShowList.Add(true); m_WorksheetNameList.Add(workbook.Worksheets[i].Name); } m_WorksheetListObjectsList = new List <bool>(m_WorksheetNum); m_WorksheetColumnList = new List <List <string> >(m_WorksheetNum); for (int i = 0; i < m_WorksheetNum; i++) { List <string> columnNames = new List <string>(); if (workbook.Worksheets[i].ListObjects.Count == 0) { m_WorksheetListObjectsList.Add(false); } else { m_WorksheetListObjectsList.Add(true); foreach (var column in workbook.Worksheets[i].ListObjects[0].ListColumns) { columnNames.Add(column.Name); } } m_WorksheetColumnList.Add(columnNames); } m_ExcelFileChangeTime = lastFileWriteTime; m_PriorityList = new List <int>(m_WorksheetNum); m_OldPriorityList = new List <int>(m_WorksheetNum); for (int i = 0; i < m_WorksheetNum; i++) { if (m_Window.PriorityConfig.PriorityMap.ContainsKey(m_WorksheetNameList[i])) { m_PriorityList.Add(m_Window.PriorityConfig.PriorityMap[m_WorksheetNameList[i]]); m_OldPriorityList.Add(m_Window.PriorityConfig.PriorityMap[m_WorksheetNameList[i]]); } else { m_PriorityList.Add(3); m_OldPriorityList.Add(3); } } } }
private string ListExcelFiles() { if (Directory.Exists(m_CacheExcelExportDir) && !string.IsNullOrEmpty(m_CacheExcelExportDir)) { FileInfo fileInfo = new FileInfo(m_CacheExcelExportDir); var lastFileWriteTime = EditorTimeUtility.DateTimeToUnixTimesStamp(fileInfo.LastWriteTimeUtc); if (lastFileWriteTime != m_ExcelExportDirChange) { m_ExcelFileList = EditorFileUtility.FilterDirectory(m_CacheExcelExportDir, new string[] { ".xlsx", ".xls", ".xlsm" }, false); m_ExcelExportDirChange = lastFileWriteTime; m_SelectionGridIndex = -1; m_LastSelectionGridIndex = -1; return(CheckDuplicateWorkSheet()); } } return(""); }