Android Jxl读写Excel

简介: Jxl 包下载Android Studio 依赖 compile 'net.sourceforge.jexcelapi:jxl:2.6.12'本测试在Exlipse中, 由于Jxl的跨平台性。

Jxl 包下载

Android Studio 依赖

    compile 'net.sourceforge.jexcelapi:jxl:2.6.12'

本测试在Exlipse中, 由于Jxl的跨平台性。

  1. 创建Excel表

/**
 * 创建Excel
 * Created by mazaiting on 2017/9/28.
 */
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);
  }
}
  1. 读取Excel表

/**
 * 读取Excel
 */
public class ReadExcel {
    
    public static void main(String[] args) {
        // 字符列表
        List<String> list = new ArrayList<String>();
        // 文件路径
        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<sheet.getColumns();j++){
            StringBuffer sb = new StringBuffer();
            for (int i=0;i<sheet.getRows();i++){
                // 列,行
                cell = sheet.getCell(j, i);
                sb.append(cell.getContents());// 获取单元格内容
                sb.append(",");// 将单元格的每行内容用逗号隔开
            }
            list.add(sb.toString());//将每行的字符串用一个String类型的集合保存。
        }
        
        workbook.close();// 关闭工作簿
        
        // 迭代集合查看每行的数据
        for (String ss : list){
            System.out.println(ss);
        }
    }
}
目录
相关文章
|
2月前
|
Python
python读写操作excel日志
主要是读写操作,创建表格
64 2
|
2月前
|
索引 Python
Excel学习笔记(一):python读写excel,并完成计算平均成绩、成绩等级划分、每个同学分数大于70的次数、找最优成绩
这篇文章是关于如何使用Python读取Excel文件中的学生成绩数据,并进行计算平均成绩、成绩等级划分、统计分数大于70的次数以及找出最优成绩等操作的教程。
81 0
对excel读写的三个模块,xlsxwriter最牛,xlwt , xlrd,openpyxl
对excel读写的三个模块,xlsxwriter最牛,xlwt , xlrd,openpyxl
|
4月前
|
SQL JSON 关系型数据库
n种方式教你用python读写excel等数据文件
n种方式教你用python读写excel等数据文件
|
4月前
|
easyexcel Java 关系型数据库
阿里巴巴-EasyExcel 基于Java的简单、省内存的读写Excel
该文章主要介绍了在Java应用中如何使用EasyExcel技术完成对Excel文件的导入和导出操作,包括环境搭建、基本概念、快速入门、进阶操作和综合应用等内容,并提供了相关代码示例和注意事项。
 阿里巴巴-EasyExcel 基于Java的简单、省内存的读写Excel
|
5月前
|
存储 对象存储 Python
`openpyxl`是一个用于读写Excel 2010 xlsx/xlsm/xltx/xltm文件的Python库。它不需要Microsoft Excel,也不需要.NET或COM组件。
`openpyxl`是一个用于读写Excel 2010 xlsx/xlsm/xltx/xltm文件的Python库。它不需要Microsoft Excel,也不需要.NET或COM组件。
|
6月前
|
XML Java 测试技术
《手把手教你》系列技巧篇(六十七)-java+ selenium自动化测试 - 读写excel文件 - 中篇(详细教程)
【6月更文挑战第8天】本文介绍了Java中操作Excel的工具,包括POI和JXL。POI支持处理Office 2003及以下的OLE2格式(.xls)和2007以上的OOXML格式(.xlsx)。而JXL只能处理2003版本的Excel文件。文章详细讲解了如何下载和使用JXL库,并给出了一个简单的Java代码示例,展示如何读取2003版Excel文件中的数据。在实际项目中,由于JXL对新版本Excel的支持限制,通常推荐使用POI。
72 5
|
6月前
|
Java 测试技术 Apache
《手把手教你》系列技巧篇(六十八)-java+ selenium自动化测试 - 读写excel文件 - 下篇(详细教程)
【6月更文挑战第9天】本文介绍了如何使用Java处理Excel文件中的不同数据类型,包括日期、数字、布尔值和标签(常规字符串)。文章提供了两个示例,分别使用JXL库和Apache POI库来读取Excel文件。
51 1
|
6月前
|
C#
【C#】C#读写Excel文件
【C#】C#读写Excel文件
136 1
|
6月前
|
Java 测试技术 Apache
《手把手教你》系列技巧篇(六十六)-java+ selenium自动化测试 - 读写excel文件 - 上篇(详细教程)
【6月更文挑战第7天】本文介绍了在Java自动化测试中如何操作Excel数据。文章提到了当测试数据存储在Excel文件时,可以使用Apache的POI库来读写Excel。POI提供了对OLE2(.xls)和OOXML(.xlsx)格式的支持,比JXL库功能更全面。文章还详细讲解了如何下载和添加POI库到项目中,以及准备测试用的Excel文件。最后,给出了一个简单的Java代码示例,演示如何读取Excel文件的内容。
64 1