色偷偷伊人-色偷偷综合-色无五月-色香蕉影院-色亚洲影院

Java技術中Excel報表的應用研究

所屬欄目:計算機應用論文 發布日期:2011-05-14 17:14 熱度:


  (3)如果將程序中的FileOutputStream("c:\workbook.xls')參數改為名為"workbook.xls",則文件會創建在項目根目錄。
  4.3往Excel單元格中寫入信息
  POI把Excel分解成如圖2所示的對象結構。四個對象的創建是互相依賴的,自頂向下的關系是:工作簿(HSSFWorkbook)—>表格(HSSFSheet)—>表格行(HSSFRow)—>單元格(HSSFCell)。
  
  
  圖2POI的Excel對象結構
  在Excel創建了四個單元格,并將類型不同的值寫入各單元格,代碼如下(僅給出main方法)。
  //-----文件名:ExcelSample2.java-----
  publicstaticVoidmain(String[]args)throwsIOException{
  /*
  *在工作簿里上創建一個sheet,在sheet里創建一行,參數為行號(第二行)
  */
  HSSFWorkbookwb=newHSSFWorkbook();
  HSSFWorkbooksheet=wb.createSheet("newsheet");
  HSSFRowrow=sheet.createRow((short)1);
  /*
  *在row的這一行創建四個單元格,short型參數為列號;
  *第一個單元格第1列設為整數1,其他單元格使用簡潔的一句式寫法,分別設置為實數、字符串、布爾型
  */
  HSSFCellcell=row.createCell((shot)0);
  cell.setCellValue(1);
  row.createCell((short)1).setCellValue(1.2);
  row.createCell((short)2).setCellValue("HelloWorld");
  row.createCell((short)3).setCellValue(true);
  /*
  *寫入文件
  */
  FileOutputStreamfileout=newFilwOutStream("c:workbook.xls");
  wb.write(fileOut);
  fileOut.close();
  }
  打開Excel文件,其效果如圖3所示:
  
  圖3實例的效果圖
  注意;無論行列,在POI中都是以0為起始,即0表示第1行(列),3表示第4行(列)。
  中文化的問題:
  如果要將sheet命名為中文或將單元格寫入中文值,則需要多使用一些語句,否則還像原來那樣寫,出來的會是亂碼。
  (1)sheet命名為中文
  HSSFWorkbookwb=newHSSFWorkbook();
  HSSFSheetsheet=wb.createSheet();
  wb.setSheetName(0,"年終報表",HSSFWorkbook.ENCODING_UTF_16);
  其中setSheetName的第一個參數值0,是指對工作簿的第一個sheet命名。
  (2)單元格寫入中文
  cell.setEncodig(HSSFCell.ENCODING_UTF_16);
  cell.setCellValue("利潤");
  
  4.4合并單元格
  示例代碼如下:
  //-----文件名:ExcelSample6.java-----
  HSSFWorkbookwb=newHSSFWorkbook();
  HSSFSheetsheet=wb.createSheet();
  HSSFRowrow=sheet.createRow((short)1);
  //將單元格從第2行第2列合并到第3行第5列
  HSSFCellcell=row.createCell((short)1);
  cell.setCellValue("HellloWorld");
  sheet.addMergedRegion(newRegion(newRegion(short)3,2(short)4));
  //寫入文件
  FileOutStreamfileOut=newFileOutputStream("c:workbook.xls");
  wb.write(fileOut);
  fileOut.close();
  效果如圖4
  
  圖4合并單元格1
  說明:以上程序的關鍵在于Region(1,(short)3,2,(short)4),前兩個參數是合并的左上角坐標,后兩個參數是右下角坐標,即從第2行第2列合并到第3行第5列,如果將Region的第二個參數改為3,即Region(1,(short)3,2,(short)4),則它是從第2行第4列合并到第3行第5列,其效果如圖5所示。
  
  圖5合并單元格2
  4.5讀取Excel文檔中的數據
  示例2將演示如何讀取Excel文檔中的數據。假定在D盤JTest目錄下有一個文件名為test1.xls的Excel文件。
  示例2程序如下:
  importorg.apache.poi.hssf.usermodel.HSSFWorkbook;
  importorg.apache.poi.hssf.usermodel.HSSFSheet;
  importorg.apache.poi.hssf.usermodel.HSSFRow;
  importorg.apache.poi.hssf.usermodel.HSSFCell;
  importjava.io.FileInputStream;
  publicclassReadXL{
  /**Excel文件的存放位置。注意是正斜線*/
  publicstaticStringfileToBeRead="D:\test1.xls";
  publicstaticvoidmain(Stringargv[]){
  try{
  //創建對Excel工作簿文件的引用
  HSSFWorkbookworkbook=newHSSFWorkbook(newFileInputStream(fileToBeRead));
  //創建對工作表的引用。
  //本例是按名引用(讓我們假定那張表有著缺省名"Sheet1")
  HSSFSheetsheet=workbook.getSheet("Sheet1");
  //也可用getSheetAt(intindex)按索引引用,
  //在Excel文檔中,第一張工作表的缺省索引是0,
  //其語句為:HSSFSheetsheet=workbook.getSheetAt(0);
  //讀取左上端單元
  HSSFRowrow=sheet.getRow(0);
  HSSFCellcell=row.getCell((short)0);
  //輸出單元內容,cell.getStringCellValue()就是取所在單元的值
  System.out.println("左上端單元是:"+cell.getStringCellValue());
  }catch(Exceptione){
  System.out.println("已運行xlRead():"+e);
  }
  }
  }
  4.6設置單元格格式
  在這里,我們將只介紹一些和格式設置有關的語句,我們假定workbook就是對一個工作簿的引用。在Java中,第一步要做的就是創建和設置字體和單元格的格式,然后再應用這些格式:

 2/3   首頁 上一頁 1 2 3 下一頁 尾頁

文章標題:Java技術中Excel報表的應用研究

轉載請注明來自:http://www.anghan.cn/fblw/dianxin/yingyong/8894.html

相關問題解答

SCI服務

搜論文知識網 冀ICP備15021333號-3

主站蜘蛛池模板: 亚洲欧美啪啪 | 91精品国产色综合久久不 | 国产精品亚洲片在线观看麻豆 | 国产精品最新 | 黄播视频 | 可以免费观看的黄色网址 | 中文字幕久久网 | 国产欧美日本亚洲精品一4区 | 亚洲欧美日韩高清一区二区三区 | 国产精品大全国产精品 | 国产无卡一级毛片aaa | 在线免费观看黄色 | 真实国产乱子伦对白视频37p | 911精品国产91久久久久 | 日韩在线播放一区 | 欧美片免费观看网址 | 中文字幕在线观看一区二区三区 | 一级黄色录像免费观看 | 99热久久这里只精品国产www | 在线免费观看网站入口在哪 | 国产女人综合久久精品视 | 亚洲国产精品热久久 | 黄色片在线播放 | 亚洲第一毛片 | 国产精品亚洲一区二区三区久久 | 老司机狠狠k免费毛片 | 亚洲精品一区二区三区在线播放 | 久久久久国产精品免费免费不卡 | 日韩中文字幕在线视频 | 亚洲丁香婷婷 | 久久久精品免费 | 小明台湾成人永久免费看看 | 在线观看日韩一区 | 中文国产成人精品久久水 | 91精品国产高清久久久久久io | 国产色婷婷精品免费视频 | 色婷婷六月桃花综合影院 | 1024你懂的国产 | 三级毛片大全 | 亚洲色图综合在线 | 免费看黄色片网站 |