java 对.xls 文件格式的操作

2024-04-20 14:18
文章标签 java 操作 文件格式 xls

本文主要是介绍java 对.xls 文件格式的操作,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

二、java 对.xls 文件格式的操作

 1
 2 package  com.job5156.xlstodb;
 3
 4 import  java.io.FileInputStream;
 5 import  java.io.InputStream;
 6
 7 import  jxl.Cell;
 8 import  jxl.Workbook;
 9
10 /**
11  *  @author  Alpha
12  * JAVA 操作 excel 中的 .xls文件格式
13   */

14 public   class  ExcelUtil
15 {
16      public   static   void  main(String[] args) 
17      {
18         ExcelUtil eu  =   new  ExcelUtil();
19         eu.run( " D:/alpha/ab.xls " );
20     }

21     
22      private   void  run(String filename)
23      {
24          try
25          {
26             InputStream is  =   new  FileInputStream(filename);
27             jxl.Workbook rwb  =  Workbook.getWorkbook(is);
28              // 获得总 Sheets
29              // Sheet[] sheets = rwb.getSheets();
30              // int sheetLen = sheets.length;
31              // 获得单个Sheets 含有的行数
32             jxl.Sheet rs  =  rwb.getSheet( 0 );  // 读取第一个工作表的数据
33              // Cell[] cell_domain = rs.getColumn(0); // 读取第一列的值
34              int  num  =  rs.getRows(); // 得到此excel有多少行..
35              for ( int  i = 0 ;i < num;i ++ )
36              {
37                 Cell[] cell  =  rs.getRow(i); // 得到第i行的数据..返回cell数组
38                 String name  =  cell[ 0 ].getContents(); // 得到第i行.第一列的数据.
39                 String email  =  cell[ 1 ].getContents(); // 得到第i行.第二列的数据.
40                 String tel  =  cell[ 2 ].getContents(); 
41                 String number  =  cell[ 3 ].getContents(); 
42                 
43                 System.out.println( " ===name: " + name);
44                 System.out.println( " ===email: " + email);
45                 System.out.println( " ===tel: " + tel);
46                 System.out.println( " ===number: " + number);
47                 System.out.println( "   " );
48             }

49         }

50          catch (Exception ex)
51          {
52                 ex.printStackTrace();
53         }

54          finally {
55         }

56     }

57 }

58
File f=new File("D:/MMC/TestReadXls.xls");
/*
try{
    myUrl = new URL("http://202.123.189.11/import/155.xls");
    
}
catch (Exception e) {
    out.println(new String(e.getMessage()));
}
   
    HttpURLConnection http = (HttpURLConnection) myUrl.openConnection();
            http.connect();
            myUrlStream = http.getInputStream();
  */         

try {
            //FileInputStream fis=new FileInputStream(f);
            BufferedReader br=new BufferedReader(new FileReader(f));
            //Workbook w=Workbook.getWorkbook(myUrlStream);
            Workbook w=Workbook.getWorkbook(f);
            Sheet sh=w.getSheet("Sheet1");
            int columns=sh.getColumns();//获取总共有几列
            int rows=sh.getRows();//获取该表中总共有几行
           
            System.out.println(columns+"---"+rows);
            //循环行列单元格
            for (int i = 0; i < rows; i++) {
                //for(int j=0;j<columns;j++){
                    //获取单元格需要注意的是它的两个参数,第一个是列数,第二个是行数,这与通常的行、列组合有些不同。
                    Cell cell=sh.getCell(0, i);
                    //单元格值
                    String cellValue=cell.getContents();
                    System.out.print(cellValue+"  ");
                //}
                System.out.println();
            }
           
            //或者
            for (int ii = 0; ii < rows; ii++) {
                //返回该行中所有列给cell数组
                Cell[] c=sh.getRow(ii);
                for (int jj = 0; jj < c.length; jj++) {
                    //获取单元格值
                    String value=c[jj].getContents();
                    System.out.print(value+"----  ");
                }
                System.out.println();
            }
            //关闭
            w.close();
        } catch (FileNotFoundException ex) {
            ex.printStackTrace();
        }catch (BiffException exx) {
            // TODO Auto-generated catch block
            exx.printStackTrace();
        } catch (IOException exxx) {
            // TODO Auto-generated catch block
            exxx.printStackTrace();
        }
       
    }


这篇关于java 对.xls 文件格式的操作的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/920476

相关文章

Python使用python-pptx自动化操作和生成PPT

《Python使用python-pptx自动化操作和生成PPT》这篇文章主要为大家详细介绍了如何使用python-pptx库实现PPT自动化,并提供实用的代码示例和应用场景,感兴趣的小伙伴可以跟随小编... 目录使用python-pptx操作PPT文档安装python-pptx基础概念创建新的PPT文档查看

详解Java中三种状态机实现方式来优雅消灭 if-else 嵌套

《详解Java中三种状态机实现方式来优雅消灭if-else嵌套》这篇文章主要为大家详细介绍了Java中三种状态机实现方式从而优雅消灭if-else嵌套,文中的示例代码讲解详细,感兴趣的小伙伴可以跟... 目录1. 前言2. 复现传统if-else实现的业务场景问题3. 用状态机模式改造3.1 定义状态接口3

MySQL 数据库表操作完全指南:创建、读取、更新与删除实战

《MySQL数据库表操作完全指南:创建、读取、更新与删除实战》本文系统讲解MySQL表的增删查改(CURD)操作,涵盖创建、更新、查询、删除及插入查询结果,也是贯穿各类项目开发全流程的基础数据交互原... 目录mysql系列前言一、Create(创建)并插入数据1.1 单行数据 + 全列插入1.2 多行数据

MySQL 临时表与复制表操作全流程案例

《MySQL临时表与复制表操作全流程案例》本文介绍MySQL临时表与复制表的区别与使用,涵盖生命周期、存储机制、操作限制、创建方法及常见问题,本文结合实例代码给大家介绍的非常详细,感兴趣的朋友跟随小... 目录一、mysql 临时表(一)核心特性拓展(二)操作全流程案例1. 复杂查询中的临时表应用2. 临时

MySQL 数据库表与查询操作实战案例

《MySQL数据库表与查询操作实战案例》本文将通过实际案例,详细介绍MySQL中数据库表的设计、数据插入以及常用的查询操作,帮助初学者快速上手,感兴趣的朋友跟随小编一起看看吧... 目录mysql 数据库表操作与查询实战案例项目一:产品相关数据库设计与创建一、数据库及表结构设计二、数据库与表的创建项目二:员

Java集合中的链表与结构详解

《Java集合中的链表与结构详解》链表是一种物理存储结构上非连续的存储结构,数据元素的逻辑顺序的通过链表中的引用链接次序实现,文章对比ArrayList与LinkedList的结构差异,详细讲解了链表... 目录一、链表概念与结构二、当向单链表的实现2.1 准备工作2.2 初始化链表2.3 打印数据、链表长

Java异常捕获及处理方式详解

《Java异常捕获及处理方式详解》异常处理是Java编程中非常重要的一部分,它允许我们在程序运行时捕获并处理错误或不预期的行为,而不是让程序直接崩溃,本文将介绍Java中如何捕获异常,以及常用的异常处... 目录前言什么是异常?Java异常的基本语法解释:1. 捕获异常并处理示例1:捕获并处理单个异常解释:

Java实现TXT文件导入功能的详细步骤

《Java实现TXT文件导入功能的详细步骤》在实际开发中,很多应用场景需要将用户上传的TXT文件进行解析,并将文件中的数据导入到数据库或其他存储系统中,本文将演示如何用Java实现一个基本的TXT文件... 目录前言1. 项目需求分析2. 示例文件格式3. 实现步骤3.1. 准备数据库(假设使用 mysql

java -jar example.jar 产生的日志输出到指定文件的方法

《java-jarexample.jar产生的日志输出到指定文件的方法》这篇文章给大家介绍java-jarexample.jar产生的日志输出到指定文件的方法,本文给大家介绍的非常详细,对大家的... 目录怎么让 Java -jar example.jar 产生的日志输出到指定文件一、方法1:使用重定向1、

Java报错:org.springframework.beans.factory.BeanCreationException的五种解决方法

《Java报错:org.springframework.beans.factory.BeanCreationException的五种解决方法》本文解析Spring框架中BeanCreationExce... 目录引言一、问题描述1.1 报错示例假设我们有一个简单的Java类,代表一个用户信息的实体类:然后,