使用ExcelDataReader讀取Excel檔

ExcelDataReader是一個使用C#寫得可用來讀取Excel檔的類別庫

 取得資料寫法

using Excel;

DataSet result;
DataRowCollection dataRow;
DataColumnCollection dataColumn;

public void GetDataSet()
    {
        string directoryPath = Path.Combine(Directory.GetParent(Application.dataPath).Parent.FullName, fileName);

        pathName = Path.Combine(directoryPath, string.Concat(fileName, ".xlsx"));

        using (FileStream fileStream = File.Open(pathName, FileMode.Open, FileAccess.Read))
        {
            using (IExcelDataReader excelReader = ExcelReaderFactory.CreateOpenXmlReader(fileStream))
            {
                result = excelReader.AsDataSet();

                dataRow = result.Tables[sheetName].Rows;

                dataColumn = result.Tables[sheetName].Columns;
            }
        }
    }

將資料寫回Excel裡

 public static void WriteToExcel(string[] newInfoArray)
    {
        FileInfo fileInfo = new FileInfo(pathName);

        using (ExcelPackage packge = new ExcelPackage(fileInfo))
        {
            ExcelWorksheet worksheet = packge.Workbook.Worksheets[sheetName];

            for (int i = 0; i < newInfoArray.Length; ++i)
            {
                worksheet.Cells[selectIndex + 2, i + 1].Value = newInfoArray[i];
            }

            packge.Save();
        }
    }