AndroidアプリケーションでExcelファイルを読み込む方法


この例は、AndroidアプリケーションがExcelファイルを読み込む方法を説明する。皆さんに参考にしてあげます。具体的には以下の通りです。
ReadExcel.javaファイル:

public class ReadExcel extends Activity { 
 /** Called when the activity is first created. */ 
 @Override 
 public void onCreate(Bundle savedInstanceState) { 
  super.onCreate(savedInstanceState); 
  setContentView(R.layout.main); 
  // createExcel(); 
  // readExcel(); 
  writeExcel("mnt/sdcard/test.xls"); 
 } 
 public void readExcel() { 
  try { 
   /** 
    *       ,  Excel                 
    **/ 
   InputStream is = new FileInputStream("mnt/sdcard/test.xls"); 
   Workbook book = Workbook 
     .getWorkbook(new File("mnt/sdcard/test.xls")); 
   book.getNumberOfSheets(); 
   //            
   Sheet sheet = book.getSheet(0); 
   int Rows = sheet.getRows(); 
   int Cols = sheet.getColumns(); 
   System.out.println("        :" + sheet.getName()); 
   System.out.println("   :" + Rows); 
   System.out.println("   :" + Cols); 
   for (int i = 0; i < Cols; ++i) { 
    for (int j = 0; j < Rows; ++j) { 
     // getCell(Col,Row)        
     System.out 
       .print((sheet.getCell(i, j)).getContents() + "\t"); 
    } 
    System.out.print("
"); } // Cell cell1 = sheet.getCell(0, 0); String result = cell1.getContents(); System.out.println(result); book.close(); } catch (Exception e) { System.out.println(e); } } public void createExcel() { try { // Excel WritableWorkbook book = Workbook.createWorkbook(new File( "mnt/sdcard/test.xls")); // “ ” , 0 WritableSheet sheet1 = book.createSheet(" ", 0); WritableSheet sheet2 = book.createSheet(" ", 2); // Label , (0,0) test Label label = new Label(0, 0, "test"); // sheet1.addCell(label); /* * . Number , */ jxl.write.Number number = new jxl.write.Number(1, 0, 555.12541); sheet2.addCell(number); // book.write(); book.close(); } catch (Exception e) { System.out.println(e); } } /** * jxl , , ! . * * @param filePath */ public 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); // // Random rnd = new Random((new Date()).getTime()); // int forNumber = rnd.nextInt(100); // Label label = new Label(0, 0, "test"); // for (int i = 0; i < 3; i++) { // ws.addCell(label); // ws.addCell(new jxl.write.Number(rnd.nextInt(50), rnd // .nextInt(50), rnd.nextInt(1000))); // } // ( jxl png ) // 0,1 x,y 2,5 ws.addImage(new WritableImage(5, 5, 2, 5, new File( "mnt/sdcard/nb.png"))); wwb.write(); wwb.close(); } catch (Exception e) { System.out.println(e.toString()); } } }
jxl.7 zはここをクリックしてダウンロードです。
ここで述べたように、皆さんのAndroidプログラムの設計に役に立ちます。