Android Studio 依赖compile 'net.sourceforge.jexcelapi:jxl:2.6.12'
本测试在Exlipse中, 由于Jxl的跨平台性。创建Excel表/** * 创建Excel * Created by mazaiting on 2021年05月27日. */public class WriteExcel { /**Sheet表, Excel表中的底部的表名*/ private WritableSheet mWritableSheet; /**Excel工作簿*/ private WritableWorkbook mWritableWorkbook; public static void main(String[] args) throws WriteException, IOException { WriteExcel excel = new WriteExcel(); excel.create("test"); for (int i = 0; i < 10; i++) { excel.addString(0, i, "text"+i); excel.addString(1, i, "text"+i+"-1"); excel.addString(2, i, "text"+i+"-2"); } excel.close(); } /** * 创建Sheet表 * @param fileName 文件名 * @return Sheet表 */ public WritableSheet create(String fileName){ try { // 输出Excel的路径 String filePath = "E:/"+fileName+".xls"; // 新建一个文件 OutputStream os = new FileOutputStream(filePath); // 创建Excel工作簿 mWritableWorkbook = Workbook.createWorkbook(os); // 创建Sheet表 mWritableSheet = mWritableWorkbook.createSheet("第一张工作表", 0); return mWritableSheet; } catch (IOException e) { e.printStackTrace(); } return null; } /** * 关闭工作簿 * @throws IOException * @throws WriteException */ public void close() throws IOException, WriteException { // 写入数据 mWritableWorkbook.write(); // 关闭文件 mWritableWorkbook.close(); } /** * 添加字符串 * @param col 列号 * @param row 行号 * @param text 文本 * @throws WriteException */ public void addString(int col, int row, String text) throws WriteException { if (null == mWritableSheet) return; Label label = new Label(col, row, text); mWritableSheet.addCell(label); } /** * 添加数字 * @param col 列号 * @param row 行号 * @param num 数字 * @throws WriteException */ public void addInt(int col, int row, int num) throws WriteException { if (null == mWritableSheet) return; Number number = new Number(col, row, num); mWritableSheet.addCell(number); }}读取Excel表/** * 读取Excel */public class ReadExcel { public static void main(String[] args) { // 字符列表 List list = new ArrayList(); // 文件路径 String filePath = "E:/test.xls"; // 输入流 InputStream is = null; // Excel工作簿 Workbook workbook = null; try { // 加载Excel文件 is = new FileInputStream(filePath); // 获取workbook workbook = Workbook.getWorkbook(is); } catch (Exception e) {} // 获取sheet, 如果你的workbook里有多个sheet可以利用workbook.getSheets()方法来得到所有的 Sheet sheet = workbook.getSheet(0);// 这里只取得第一个sheet的值,默认从0开始 System.out.println(sheet.getColumns());// 查看sheet的列 System.out.println(sheet.getRows());// 查看sheet的行 Cell cell = null;// 单个单元格 // 开始循环,取得cell里的内容,按具体类型来取 // 这里只取String类型 for (int j = 0;j