1. gzyueqian
      18529173453
      首頁 > 新聞中心 > > 正文

      Java/Excel 學習

      更新時間: 2007-05-07 13:23:40來源: 粵嵌教育瀏覽量:1021


      本文主要給出java/Excel應用的一個實用程序,供大家研究討論.

      近兩天研究查看了下Java+Excel的方法

      首先需要到網上下個jxl.jar的包

      我寫的練習代碼如下:(注意里面的圖片替換成自己的就可以了)

      import java.io.*;
      import java.util.Random;
      import java.util.Date;
      import jxl.*;
      import jxl.format.UnderlineStyle;
      import jxl.write.*;
      import jxl.write.Number;
      import jxl.write.Boolean;
      public class CreateXL
      {
      public CreateXL()
      {

      }
      public static void main(String[] args)
      {
      //讀Excel
      //CreateXL.readExcel("d:/abc.xls");

      //創建新的Excel
      CreateXL.writeExcel("d:/new.xls");

      //更新Excel
      CreateXL.updateExcel("d:/new.xls");

      }
      //jxl暫時不提供修改已經存在的數據表,這里通過一個小辦法來達到這個目的,不適合大型數據更新!
      //這里是通過覆蓋原文件來更新的.
      public static void updateExcel(String filePath)
      {
      try
      {
      Workbook rwb = Workbook.getWorkbook(new File(filePath));
      WritableWorkbook wwb = Workbook.createWorkbook(new File("d:/new.xls"),rwb);//copy
      WritableSheet ws = wwb.getSheet(0);
      WritableCell wc = ws.getWritableCell(0,0);
      //判斷單元格的類型,做出相應的轉換
      Label label = (Label)wc;
      label.setString("The value has been modified");
      wwb.write();
      wwb.close();
      rwb.close();
      }
      catch(Exception e)
      {
      e.printStackTrace();
      }
      }

      public static void writeExcel(String filePath)
      {
      try
      {
      //創建工作薄
      WritableWorkbook wwb = Workbook.createWorkbook(new File(filePath));

      //創建工作表
      WritableSheet ws = wwb.createSheet("Sheet1",0);
      //System.out.println("create ok!");

      //添加標簽文本
      Random rnd=new Random((new Date()).getTime());
      int forNumber=rnd.nextInt(100);
      for(int i=0;i<forNumber;i++)
      {
      ws.addCell(new Number(rnd.nextInt(50),rnd.nextInt(50),rnd.nextInt(1000)));
      }

      //添加圖片(注意此處jxl暫時只支持png格式的圖片)
      //0,1分別代表x,y 2,5代表寬和高占的單元格數
      ws.addImage(new WritableImage(0,1,2,5,new File("png\\cs.png")));

      wwb.write();
      wwb.close();
      }
      catch(Exception e)
      {
      System.out.println(e.toString());
      }
      }
      public static void readExcel(String filePath)
      {
      /**
      *后續考慮問題,比如Excel里面的圖片以及其他數據類型的讀取
      **/
      try
      {
      InputStream is=new FileInputStream(filePath);
      //聲名一個工作薄
      Workbook rwb = Workbook.getWorkbook(is);

      //獲得工作薄的個數
      //rwb.getNumberOfSheets();

      //在Excel文檔中,張工作表的缺省索引是0
      Sheet st = rwb.getSheet("Sheet1");

      //通用的獲取cell值的方式,getCell(int column, int row) 行和列
      int Rows=st.getRows();
      int Cols=st.getColumns();
      System.out.println("當前工作表的名字:"+st.getName());
      System.out.println("總行數:"+Rows);
      System.out.println("總列數:"+Cols);

      Cell c;
      for(int i=0;i<Cols;++i)
      {
      for(int j=0;j<Rows;++j)
      {
      //getCell(Col,Row)獲得單元格的值
      System.out.print((st.getCell(i,j)).getContents()+"\t");
      }
      System.out.print("\n");
      }
      //操作完成時,關閉對象,釋放占用的內存空間
      rwb.close();
      }
      catch(Exception e)
      {
      e.printStackTrace();
      }
      }
      }


      免費預約試聽課

      亚洲另类欧美综合久久图片区_亚洲中文字幕日产无码2020_欧美日本一区二区三区桃色视频_亚洲AⅤ天堂一区二区三区

      
      

      1. 亚洲永久免费在线观看 | 亚洲国产欧美精品一区二区 | 亚洲国产美国国产综合一区二区 | 日本伊人色综合网 | 亚洲午夜成人国产福利 | 人人狠狠久久亚洲区 |