From 網路文章 + Robert 實際測試&修改

 


一、創建文件
擬生成一個名為「測試數據.xls」的Excel文件,其中第一個工作表被命名為「第一頁」,大致效果如下:
代碼(CreateXLS.java):
//生成Excel的類

 import java.io.File; 
 import jxl.Workbook; 
 import jxl.write.Label; 
 import jxl.write.WritableSheet; 
 import jxl.write.WritableWorkbook; 
 class CreateXLS { 
   public static void main(String args[]) { 
     try { 
       // 打開文件 
       WritableWorkbook book = Workbook.createWorkbook(new File("測試.xls")); 
       // 生成名為「第一頁」的工作表,參數0表示這是第一頁 
       WritableSheet sheet = book.createSheet("第一頁", 0); 
       // 在Label對象的構造子中指名單元格位置是第一列第一行(0,0) 
       // 以及單元格內容為test 
       Label label = new Label(0, 0, "test"); 
       // 將定義好的單元格添加到工作表中 
       sheet.addCell(label); 
       /*
        * 生成一個保存數字的單元格 必須使用Number的完整包路徑,否則有語法歧義 單元格位置是第二列,第一行,值為789.123
        */ 
       jxl.write.Number number = new jxl.write.Number(1, 0, 789.123); 
       sheet.addCell(number); 
       // 寫入數據並關閉文件 
       book.write(); 
       book.close(); 
     } catch (Exception e) { 
       System.out.println(e); 
     } 
   } 
 } 


-------------------------------------------------------------------------------------------------------------------------
三、讀取文件
以剛才我們創建的Excel文件為例,做一個簡單的讀取操作,程序代碼如下:
//讀取Excel的類
 import java.io.*; 
 import jxl.*; 
 class ReadXLS { 
   public static void main(String args[]) { 
     try { 
       Workbook book = Workbook.getWorkbook(new File("測試.xls")); 
       // 獲得第一個工作表對象 
       Sheet sheet = book.getSheet(0); 
       int rows = sheet.getRows() ;//.getPhysicalNumberOfRows();
        System.out.println("rows = " + rows );  //總筆數
                  
       // 得到第一列第一行的單元格 
       Cell cell1 = sheet.getCell(0, 0); 
       String result = cell1.getContents(); // 獲得單元格的內容 
       System.out.println(result); 
       book.close(); 
     } catch (Exception e) { 
       System.out.println(e); 
     } 
   } 
 } 
-------------------------------------------------------------------------------------------------------------------------
四、修改文件
利用jExcelAPI可以修改已有的Excel文件,修改Excel文件的時候,除了打開文件的方式不同之外,其他操作和創建Excel是一樣的。下面的例子是在我們已經生成的Excel文件中添加一個工作表:
//修改Excel的類,添加一個工作表
查看複製到剪切板打印

      
import java.io.*; 
import jxl.*; 
import jxl.Workbook; 
import jxl.write.Label; 
import jxl.write.WritableSheet; 
import jxl.write.WritableWorkbook; 
       
   class UpdateXLS { 
     public static void main(String args[]) { 
       try { 
         // Excel獲得文件 
         Workbook wb = Workbook.getWorkbook(new File("測試.xls")); 
        
        // 打開一個文件的副本,並且指定數據寫回到原文件 
        WritableWorkbook book = Workbook.createWorkbook(new File("測試.xls"), wb);   
       
        // 添加一個工作表 
        WritableSheet sheet = book.createSheet("第二頁", 1); 
        sheet.addCell(new Label(0, 0, "第二頁的測試數據")); 
        book.write(); 
        book.close(); 
      } catch (Exception e) { 
        System.out.println(e); 
      } 
    } 
  }

 

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 羅伯特 的頭像
    羅伯特

    Thinking in Robert

    羅伯特 發表在 痞客邦 留言(2) 人氣()