代碼:
using System.Data; using System.IO; using NPOI.HSSF.UserModel; using NPOI.SS.UserModel; namespace ahwildlife.Utils { /// <summary> /// Excel工具類 /// 利用NPOI生成Excel /// </summary> public class ExcelUtil { #region 生成Excel /// <summary> /// 生成Excel /// </summary> public static void CreateExcel(DataTable dt, string path) { HSSFWorkbook workbook = new HSSFWorkbook(); ISheet sheet = string.IsNullOrEmpty(dt.TableName) ? workbook.CreateSheet("Sheet1") : workbook.CreateSheet(dt.TableName);//創建工作表 #region 標題 IRow row = sheet.CreateRow(0);//在工作表中添加一行 for (int i = 0; i < dt.Columns.Count; i++) { ICell cell = row.CreateCell(i);//在行中添加一列 cell.SetCellValue(dt.Columns[i].ColumnName);//設置列的內容 } #endregion #region 填充數據 for (int i = 1; i <= dt.Rows.Count; i++)//遍歷DataTable行 { DataRow dataRow = dt.Rows[i - 1]; row = sheet.CreateRow(i);//在工作表中添加一行 for (int j = 0; j < dt.Columns.Count; j++)//遍歷DataTable列 { ICell cell = row.CreateCell(j);//在行中添加一列 cell.SetCellValue(dataRow[j].ToString());//設置列的內容 } } #endregion #region 輸出到Excel MemoryStream ms = new MemoryStream(); workbook.Write(ms); using (FileStream fs = new FileStream(path, FileMode.Create, FileAccess.Write)) { byte[] bArr = ms.ToArray(); fs.Write(bArr, 0, bArr.Length); fs.Flush(); } #endregion } #endregion } } View Code
這是結構體指針中的一個符號,給你寫個程序解釋一下吧,例如:
#include<stdio.h>
struct STU //定義一個結構體
{
int num;
}stu;
int main()
{
struct STU *p; //定義一個結構體指針
p=stu; //p指向stu這個結構體變量
stu.num=100; //給結構體成員num附個初值
printf("%d",p->num); //輸出stu中的num的值
return;
}
看到了吧,->的作法就是在引用結構體中的變量!!
形式如:p->結構體成員(如p->num)
他的作用相當於stu.num或(*p).num
不知道這樣解釋你明不明白、、、、、不懂了call我,O(∩_∩)O~
望采納。
這是結構體指針中的一個符號,給你寫個程序解釋一下吧,例如:
#include<stdio.h>
struct STU //定義一個結構體
{
int num;
}stu;
int main()
{
struct STU *p; //定義一個結構體指針
p=stu; //p指向stu這個結構體變量
stu.num=100; //給結構體成員num附個初值
printf("%d",p->num); //輸出stu中的num的值
return;
}
看到了吧,->的作法就是在引用結構體中的變量!!
形式如:p->結構體成員(如p->num)
他的作用相當於stu.num或(*p).num
不知道這樣解釋你明不明白、、、、、不懂了call我,O(∩_∩)O~
望采納。