Android 中讀取Excel文件實例詳解
Android 中讀取Excel文件實例詳解
最近有個需求需要在app內(nèi)置數(shù)據(jù),新來的產(chǎn)品扔給了我兩個Excel表格就不管了(兩個表格格式還不統(tǒng)一。。。),于是通過度娘等方法找到了Android中讀取Excel表格文件的一種方法,記錄一下。
閑話一下Excel中工作簿和工作表的區(qū)別:
工作簿中包含有工作表。工作簿可以由一張或多張工作表組成,一個工作簿就是一個EXCEL表格文件。
好了,開始讀取表格文件吧。
前提
首先,我們假設(shè)需要讀取的表格文件名字為test.xls, 位于assets根目錄下。
所需Jar包
這里為了能讀取到Excel表格文件,我們要添加一個第三方Jar包jxl。
這里有點兒需要注意的地方:由于表格文件格式較多,老版本的jxl后只支持Excel2003版本的,所以如果拿到的表格文件格式是xlsm或者xlsn之類的,我們首先要把文件另存為xls格式。
開始讀取
1.初始化變量:
InputStream inputStream = null;//輸入流 FileOutputStream outputStream = null;//輸出流 Workbook book = null;//Excel工作簿對象
2.以流的方式讀取我們內(nèi)置在assets目錄下的表格文件
inputStream = context.getAssets().open("test.xls");
3.將上一步的輸入流讀取成一個文件,方便后續(xù)使用
File tempFile = new File(context.getCacheDir(), "test.xls");//臨時文件,第二個參數(shù)為文件名字,可隨便取 outputStream = new FileOutputStream(tempFile); byte[] buf = new byte[1024]; int len; while ((len = inputStream.read(buf)) > 0) {//while循環(huán)進行讀取 outputStream.write(buf, 0, len); } outputStream.close(); inputStream.close();
4.得到Excel文件對象后,就可以利用jxl包中提供的各種方法來操作表格文件。jxl提供的方法很多,這里簡單介紹下項目中用到的幾個。
book = Workbook .getWorkbook(tempFile);//用讀取到的表格文件來實例化工作簿對象(符合常理,我們所希望操作的就是Excel工作簿文件) Sheet[] sheets = book.getSheets(); //得到所有的工作表 for (int m = 0; m < sheets.length; m++) { Sheet sheet = book.getSheet(m); int Rows = sheet.getRows();//得到當(dāng)前工作表的行數(shù) int Cols = sheet.getColumns(); //得到當(dāng)前工作表的列數(shù) for (int i = 0; i < Cols; i++) { // 注意:這里是按列讀取的?。?! for (int j = 0; j < Rows; j++) { String content=sheet.getCell(i, j).getContents();//結(jié)果是String類型的,根據(jù)具體需求進行類型轉(zhuǎn)換 } } }
總結(jié)
如果表格文件是內(nèi)置在assets目錄下的話,按照以上流程讀取即可,如果是在sd卡之類的話,步驟基本一致,都是首先得到我們的表格文件,然后得到工作簿對象,對其進行操作。
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
- Android應(yīng)用讀取Excel文件的方法
- Android實現(xiàn)仿excel數(shù)據(jù)表格效果
- Android操作Excel文件的功能實現(xiàn)
- android通過jxl讀excel存入sqlite3數(shù)據(jù)庫
- Android開發(fā)實現(xiàn)生成excel的方法詳解
- android讀取assets中Excel表格并顯示
- Android開發(fā)實現(xiàn)的導(dǎo)出數(shù)據(jù)庫到Excel表格功能【附源碼下載】
- Android 操作excel功能實例代碼
- Android開發(fā)實現(xiàn)讀取excel數(shù)據(jù)并保存為xml的方法
- Android多國語言轉(zhuǎn)換Excel及Excel轉(zhuǎn)換為string詳解
相關(guān)文章
Android編程基礎(chǔ)之Menu功能菜單設(shè)計實例
這篇文章主要介紹了Android編程基礎(chǔ)之Menu功能菜單,結(jié)合實例形式分析了基本的Menu功能菜單原理、定義與響應(yīng)機制,需要的朋友可以參考下2016-10-10Android Activity中onStart()和onResume()的區(qū)別分析
這篇文章主要介紹了Android Activity中onStart()和onResume()的區(qū)別,結(jié)合Activity的四種狀態(tài)簡單分析了Android Activity中onStart()和onResume()方法的作用,并補充說明了Activity中六個常用函數(shù),需要的朋友可以參考下2016-01-01Android編程實現(xiàn)提取網(wǎng)址鏈接的方法
這篇文章主要介紹了Android編程實現(xiàn)提取網(wǎng)址鏈接的方法,涉及Android針對字符串的正則匹配操作相關(guān)技巧,需要的朋友可以參考下2016-10-10詳解Android使用CoordinatorLayout+AppBarLayout實現(xiàn)拉伸頂部圖片功能
這篇文章主要介紹了Android使用CoordinatorLayout+AppBarLayout實現(xiàn)拉伸頂部圖片功能,本文實例文字相結(jié)合給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下2019-10-10ListView點擊Item展開菜單實現(xiàn)代碼詳解
這篇文章主要介紹了ListView點擊Item展開菜單實現(xiàn)代碼詳解的相關(guān)資料,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2016-06-06Android RecyclerView實現(xiàn)數(shù)據(jù)列表展示效果
這篇文章主要為大家詳細介紹了Android RecyclerView實現(xiàn)數(shù)據(jù)列表展示效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-07-07