/// <summary> /// 导出Array为XLS,并打开生成的XLS /// </summary> /// <param name="array">二维数组</param> /// <param name="saveFileDialog">对话框</param> /// <returns></returns> public static void OutputXLSFromArray(string[,] array, SaveFileDialog saveFileDialog) { DialogResult rs = saveFileDialog.ShowDialog(); if (rs != DialogResult.OK) { return; } //try //{ ExcelWriter excel = new ExcelWriter(saveFileDialog.FileName); excel.BeginWrite(); short cols = 0; short rows = 0; int rowLength = array.GetUpperBound(0) + 1; int columnLength = array.GetUpperBound(1) + 1; while (rows < rowLength) { cols = 0; while (cols < columnLength) { excel.WriteString(rows, cols, array[rows, cols]); cols++; } rows++; } excel.EndWrite(); Process.Start(saveFileDialog.FileName); //} //catch //{ // return false; //} }
/// <summary> /// 导出Array为XLS,并打开生成的XLS /// </summary> /// <param name="array">数组</param> /// <param name="saveFileDialog">对话框</param> /// <returns></returns> public static void OutputXLSFromArray(string[] array, SaveFileDialog saveFileDialog) { DialogResult rs = saveFileDialog.ShowDialog(); if (rs != DialogResult.OK) { return; } ExcelWriter excel = new ExcelWriter(saveFileDialog.FileName); excel.BeginWrite(); short cols = 0; while (cols < array.Length) { excel.WriteString(0, cols, array[cols]); cols++; } excel.EndWrite(); Process.Start(saveFileDialog.FileName); }
/// <summary> /// 导出DataReader为XLS,并打开生成的XLS /// </summary> /// <param name="columns">列名</param> /// <param name="dr">DataReader</param> /// <param name="saveFileDialog">对话框</param> /// <returns></returns> public static void OutputXLSFromDataReader(string[] columns, IDataReader dr, SaveFileDialog saveFileDialog) { DialogResult rs = saveFileDialog.ShowDialog(); if (rs != DialogResult.OK) { return; } ExcelWriter excel = new ExcelWriter(saveFileDialog.FileName); excel.BeginWrite(); short cols = 0; foreach (string column in columns) { excel.WriteString(0, cols, column); cols++; } short rows = 1; using (dr) { while (dr.Read()) { cols = 0; while (cols < dr.FieldCount) { excel.WriteString(rows, cols, dr[cols].ToString()); cols++; } rows++; } } excel.EndWrite(); Process.Start(saveFileDialog.FileName); }