日韩天天综合网_野战两个奶头被亲到高潮_亚洲日韩欧美精品综合_av女人天堂污污污_视频一区**字幕无弹窗_国产亚洲欧美小视频_国内性爱精品在线免费视频_国产一级电影在线播放_日韩欧美内地福利_亚洲一二三不卡片区

asp.net中導(dǎo)出excel數(shù)據(jù)的方法匯總_.Net教程

編輯Tag賺U幣
教程Tag:暫無Tag,歡迎添加,賺取U幣!

推薦:Asp.Net 上傳圖片并生成高清晰縮略圖
不是很復(fù)雜,大概寫一下。目的只在于實(shí)現(xiàn),未仔細(xì)按照標(biāo)準(zhǔn)什么的來寫。其中參考了網(wǎng)上已經(jīng)存在的代碼。 using System.Drawing; 頁面,如圖: 點(diǎn)擊提交按鈕: 整個(gè)實(shí)現(xiàn)的過程如下面的圖: 瀏覽頁面,選擇圖片: 點(diǎn)擊提交后,圖片以及縮略圖都已經(jīng)生成到了目標(biāo)文件夾里面

   1、由dataset生成

  2、由datagrid生成

  3、這個(gè)用dataview

  導(dǎo)入、導(dǎo)出EXCEL中的一些問題匯總

  一、在項(xiàng)目中的添加引用:

  右擊項(xiàng)目資源管理器的引用-->添加引用-->選擇.NET選項(xiàng)卡-->選擇Microsoft.Office.Interop.Excel-->確定(如下圖);

  在選擇時(shí)注意一下.NET組件的版本號(hào),圖是的12.0.0.0是Office2007的版本:

  二、在項(xiàng)目中使用Microsoft.Office.Interop.Excel:

  如果想使用Microsoft.Office.Interop.Excel,首先需要在項(xiàng)目中引用命名空間:

  using Microsoft.Office.Interop.Excel;

  三、建立Excel.Application相關(guān)對(duì)象

  //建立Application對(duì)象

  Microsoft.Office.Interop.Excel.Application myExcel = new Application();

  //建立Workbooks對(duì)象

  Workbooks myBooks = myExcel.Application.Workbooks;

  //建立一個(gè)System.Reflection.Missing的object對(duì)象

  object oMissing = System.Reflection.Missing.Value;

  四、打開或新建Excel的book文件

  //打開Excel文件,注意里的“ExccelFilePath”為Excel文件在服務(wù)器上的物理地址,包括文件名

  Workbook myBook = myBooks.Open(ExccelFilePath,oMissing, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing);

  //新建Workseet對(duì)象,,此處為要操作的工作表 ,當(dāng)前要操作的工作表的獲取方法有兩種:使用工作表的索引值或使用工作表的名稱,名稱默認(rèn)為:“sheet1”/“Sheet2”等

  Worksheet mySheet = (Worksheet)myBook.Worksheets[1];

  //如果是新建EXCEL工作簿,需要 設(shè)置如下兩行內(nèi)容,以保證工作簿中有一個(gè)工作表,

  Workbook workbook1 = excel1.Workbooks.Add(true);

  Worksheet mySheet= (Worksheet)workbook1.Worksheets["sheet1"];

  //設(shè)置EXCEL對(duì)象是否顯示界面,默認(rèn)為false不顯示界面

  myExcel.Visble=true;

  五、一些比較重要的針對(duì)Excel的操作

  1、獲取Range對(duì)象

 �、�、獲取一個(gè)單元格的Range對(duì)象:

  //選擇第一行、第一列的單元的單元格為Range對(duì)象

  Range r = (Excel.Range)mySheet.Cells[1, 1];

  //選擇多個(gè)連續(xù)的單元格為Range對(duì)象

  Range r=(Excel.Range)Range.get_Range("A1:F3")

 �、凇⒔o單元格賦值或取出單元格的值:

  //已選擇了Range對(duì)象的賦值:

  r.Text="中國";

  //未選擇Range對(duì)象的賦值:

  mySheet.Cells[1,2].Text="中國";

  //已選擇了Range對(duì)象的取值:

  String strValue= r.Text;

  //未選擇Range對(duì)象的取值:

  String strValue= mySheet.Cells[1,2].Text;

 �、邸⒔o單元格設(shè)置邊框

  mySheet.Cells[2, 1].BorderAround(XlLineStyle.xlContinuous, XlBorderWeight.xlThin, XlColorIndex.xlColorIndexAutomatic, null);//畫線

 �、堋⒑喜卧�

  //合并單元格前先要將要合并的單元格選擇為Range對(duì)象

  Range r=Range.get_Range("A1:F3");

  //然后現(xiàn)設(shè)置合并單元格

  r.MergeCells = true;

 �、�、設(shè)置單元格的字體、字號(hào)、背景色等屬性

  mySheet.Cells[1, 1].Font.Name = "黑體";

  mySheet.Cells[1, 1].Font.Size = 20;

  mySheet.Rows["1:1"].RowHeight = 40;

  mySheet.Cells[1, 1].Interior.Color = Color.FromArgb(224, 224, 224);//設(shè)置顏色

 �、�、刪除一行:

  //首先獲取要?jiǎng)h除的行的Range

  Microsoft.Office.Interop.Excel.Range range = (Microsoft.Office.Interop.Excel.Range)mySheet.Rows[sendedRow[1], Type.Missing];

  //注意刪除行后刪除后的行號(hào)被下面的行替換,如果逐行刪除,請(qǐng)先從最大的行號(hào)往最小的行號(hào)刪除

  range.Delete(Microsoft.Office.Interop.Excel.XlDeleteShiftDirection.xlShiftUp);

  ⑦、獲取有數(shù)據(jù)的行數(shù)

  int rowsint = mySheet.UsedRange.Cells.Rows.Count;

  六、EXCEL文件的保存與退出

  1、EXCEL的保存與退出

  myBook.Save();

  myBooks.Close();

  myExcel.Quit();

  2、EXCEL指定文件保存

  myBook.Close(true, FilePath +_file_Name, null);

  七、釋放EXCLE對(duì)象的資源與結(jié)束EXCEL 進(jìn)程

  關(guān)于這方面內(nèi)容有好多網(wǎng)友都在講多種方法,經(jīng)過本人實(shí)踐,以下方面才能真正做到結(jié)束EXCEL的任務(wù)進(jìn)程:

  1、將所有以上對(duì)EXCEL的操作放到一個(gè)方法中,

  2、在操作EXCEL后,即時(shí)將不使用對(duì)象一一釋放并賦null值:

  System.Runtime.InteropServices.Marshal.ReleaseComObject(mysheet);

  mysheet=null;

  System.Runtime.InteropServices.Marshal.ReleaseComObject(myBook);

  myBook=null;//http://www.111cn.net

  System.Runtime.InteropServices.Marshal.ReleaseComObject(myBooks);

  myBooks=null;

  System.Runtime.InteropServices.Marshal.ReleaseComObject(myExcel);

  myExcel=null;

  3、再新建一個(gè)方法,并以該方法中執(zhí)行上面新建的操作EXCEL方法,并在執(zhí)行完操作EXCEL方法的后面添加GC.Collect():

  //下面方法中OutPutEXCEL()方法是輸出EXCEL文件的對(duì)EXCEL 操作的方法

  private void killExcel()

  {

  outPutEXCEL();

  GC.Collect();

  GC.WaitForPendingFinalizers();

  }

  好多網(wǎng)友都在介紹使用GC.Collect()釋放EXCEL占用的資源來結(jié)束EXCEL進(jìn)行,如果將“GC.Collect();”與操作EXCEL的業(yè)務(wù)寫在一個(gè)程序塊中,“GC”是永遠(yuǎn)不能結(jié)束EXCEL進(jìn)程的,在WEB應(yīng)用程序中,這種現(xiàn)象是很可怕的事情。原因是GC不會(huì)清理本程序塊中的垃圾內(nèi)存的。

  4、在業(yè)務(wù)事件中調(diào)用killEXCEL()方法:

  protected void LinkButton3_Click(object sender, EventArgs e)

  {

  //導(dǎo)出EXCEL

  killExcel();

  }

  八、一些權(quán)限的基本設(shè)置:

  使用以上方法在開發(fā)環(huán)境中調(diào)試程序沒有一點(diǎn)問題,等發(fā)布到服務(wù)器上后,程序還是不能正常運(yùn)行,需要進(jìn)行如下的權(quán)限設(shè)置:

  1、.NET導(dǎo)出Excel遇到的80070005錯(cuò)誤的解決方法:

分享:服務(wù)器安全狗導(dǎo)致ASP.NET網(wǎng)站運(yùn)行出錯(cuò)的一個(gè)案例
字典中的關(guān)鍵字:RegistryPermission所添加的關(guān)鍵字:RegistryPermission 報(bào)錯(cuò),因?yàn)榉⻊?wù)器上安全狗對(duì).net程序關(guān)鍵字過于苛刻引出報(bào)錯(cuò)。 今天碰到一個(gè).net的報(bào)錯(cuò),之前并沒見過這種報(bào)錯(cuò),也沒有太多的詳細(xì)信息。/應(yīng)用程序中的服務(wù)器錯(cuò)誤。 字典中的關(guān)鍵字:RegistryPermis

共2頁上一頁12下一頁
來源:模板無憂//所屬分類:.Net教程/更新時(shí)間:2014-10-10
相關(guān).Net教程