精华内容
下载资源
问答
  • java批量读取Excel表格

    2016-08-10 14:14:47
    用于批量读取excel表格。工作写时非常好用。2003-2010都支持。
  • 这里我介绍一下这个过程的思路:1、定义变量那些就不说了 ,2、首先是上传文件并保存的代码3、根据excel表的路径来读取文件,之后便是先获取最大行数和最大列数,然后根据最大行数和最大列数来循环表格。循环行的...

    如果你对里面的代码不熟悉不知道的话,建议先浏览一遍代码再拿去用,

    这里我介绍一下这个过程的思路:

    1、定义变量那些就不说了 ,

    2、首先是上传文件并保存的代码

    3、根据excel表的路径来读取文件,之后便是先获取最大行数和最大列数,然后根据最大行数和最大列数来循环表格。循环行的过程中循环列,获取到一行中所有的列数据再对数据进行处理,根据需求给每一个列的数据分配一个名字,也是k-y,然后再进行存储。

    !!反正代码下面,不懂可以私信,或者自己打断点调试,看两遍就会理解里面的内容了

    @RequestMapping(value = "/ImportExcel")

    @ResponseBody

    public JSONObject ImportExcel(@RequestParam(value = "file", required = false) MultipartFile file) throws Exception {

    //这里创建json对象,实测用map的话,json数据会有问题

    JSONObject jsonMap = new JSONObject();

    Sheet sheet = null; //excel的表

    Row row = null; //行

    String cellData = null; //列数据

    //以上是定义一些要用的变量==========================================================

    //讲选择的文件上传到upload目录

    String fileName = file.getOriginalFilename();

    // 获取上传目录的路径

    String path = request.getRealPath("/upload");// 获取上传文件路径

    String prefix = fileName.substring(fileName

    .lastIndexOf('.') + 1);// 获取文件后缀名

    Date time = new Date();

    String filename = time.getYear() + "" + time.getMonth() + ""

    + time.getDay() + "" + time.getHours() + "" + time.getMinutes()

    + "" + time.getSeconds() + "";

    File targetFile = new File(path, filename + "."

    + prefix);

    //保存文件

    file.transferTo(targetFile);

    //以上先上传并把文件保存到服务器==========================================================

    // 获取上传目录的路径

    Workbook wb =EXCELBean.readExcel(path+"\\"+filename + "." + prefix);

    if(wb != null){

    //用来存放表中一行的数据

    List listMap = new ArrayList();

    //获取第一个sheet

    sheet = wb.getSheetAt(0);

    //获取最大行数

    int rownum = sheet.getPhysicalNumberOfRows();

    //获取第一行

    row = sheet.getRow(0);

    //获取最大列数

    int colnum = row.getPhysicalNumberOfCells();

    //循环行

    for (int i = 1; i < rownum; i++) {

    row = sheet.getRow(i);

    if(row !=null){

    //创建list对象接收读出的excel一行中列的数据

    List list = new ArrayList();

    //循环列

    for (int j=0;j

    cellData = (String) EXCELBean.getCellFormatValue(row.getCell(j));

    list.add(cellData);

    }

    //这里可以定义多个JSONObject来对数据进行处理嵌套等操作,最后再储存到listMap中,

    JSONObject jsonObject2 = new JSONObject();

    jsonObject2.put("skvDorCode0",list.get(0));

    jsonObject2.put("skvDorCode1",list.get(1));

    jsonObject2.put("skvDorCode2",list.get(2));

    jsonObject2.put("skvDorCode3",list.get(3));

    jsonObject2.put("skvDorCode4",list.get(4));

    jsonObject2.put("skvDorCode5",list.get(5));

    /*//创建jsonBmt对象,进一步把以上对象嵌套

    JSONObject jsonBmt = new JSONObject();

    //把以上几个嵌套入第一层对象中

    jsonObject2.put("businessMixTypes",jsonBmt); */

    listMap.add(jsonObject2);

    }else{

    break;

    }

    }// end for row

    //最外层加个key-gridData

    jsonMap.put("msg", "上传数据成功");

    jsonMap.put("gridData", listMap);

    System.out.println(jsonMap);

    return jsonMap;

    }

    jsonMap.put("msg", "上传数据为空");

    return jsonMap;

    }

    展开全文
  • java 读取excel表格 内容、图片、自动上传、图片上传后回调上传地址,并赋值到图片表格位置, 该文件是一个java源码文件 根据自己的需求修改代码
  • java读取excel 表格数据。 public static void main(String[] args) { String[][] content=POIExcelUtils.read("E:\\1.xlsx"); for(int i=0;i;i++) { if(content[i]!=null){ for(int j=0;j[i].length;j...
  • 为开发者提供:Java代码中读取Excel表格中的数据,所需要的jar包。
  • java上传读取excel工具类 涉及到MultiFile转FIle 以及多个sheet页
  • java poi怎么获取excel单元格的内容在Java读取Excel文件的内容里,我使用的个叫Java Excel API的东西,类似的还有jakarta的POI觉那个太复杂了点儿。而且jxl对中文的支持相当的好,至少我在用的过程中一点问题没出...

    java poi怎么获取excel单元格的内容

    在Java中读取Excel文件的内容

    里,我使用的个叫Java Excel API的东西,类似的还有jakarta的POI觉那个

    太复杂了点儿。而且jxl对中文的支持相当的好,至少我在用的过程中一点问题没出。

    一、下载地址

    http://www.andykhan.com/jexcelapi/

    二、特性

    可以读取Excel 95, 97, 2000文件

    可以读或写Excel 97及其以后版本的的公式(不过我发现好像有bug)

    生成Excel 97格式的电子表格

    支持字体、数字和日期格式化

    支持单元格的颜色和阴影

    可以编辑现有的文件

    三、读文件

    //声明一下,记得后面要关闭哦。。

    Workbook workbook = null;

    try {

    workbook = Workbook.getWorkbook(new File("d:\\temp\\TestRead.xls"));

    } catch (Exception e) {

    throw new Exception("file to import not found!");

    }

    Sheet sheet = workbook.getSheet(0);

    Cell cell = null;

    int columnCount=3;

    int rowCount=sheet.getRows();

    for (int i = 0; i

    for (int j = 0; j

    //注意,这里的两个参数,第一个是表示列的,第二才表示行

    cell=sheet.getCell(j, i);

    //要根据单元格的类型分别做处理,否则格式化过的内容可能会不正确

    if(cell.getType()==CellType.NUMBER){

    System.out.print(((NumberCell)cell).getValue());

    }

    else if(cell.getType()==CellType.DATE){

    System.out.print(((DateCell)cell).getDate());

    }

    else{

    System.out.print(cell.getContents());

    }

    //System.out.print(cell.getContents());

    System.out.print("\t");

    }

    System.out.print("\n");

    }

    //关闭它,否则会有内存泄露

    workbook.close();

    怎么用java实现读取excel表格里的数据生成

    使用java poi

    package webservice;

    import java.io.FileInputStream;

    import java.io.FileNotFoundException;

    import java.io.FileOutputStream;

    import java.io.IOException;

    import org.apache.poi.hssf.usermodel.HSSFCell;

    import org.apache.poi.hssf.usermodel.HSSFRow;

    import org.apache.poi.hssf.usermodel.HSSFSheet;

    import org.apache.poi.hssf.usermodel.HSSFWorkbook;

    public class ExcelController {

    @SuppressWarnings("deprecation")

    public void excel() throws FileNotFoundException, IOException{

    String filename = "d:\\excel.xls";

    HSSFWorkbook workbook = new HSSFWorkbook(new FileInputStream(filename));

    //按名引用excel表

    // HSSFSheet sheet = workbook.getSheet("JSP");

    //以用以下方式来获取excel的工作表,采用工作索引值

    HSSFSheet sheet = workbook.getSheetAt(0);

    HSSFRow row ;

    HSSFCell cell1;

    int rows=sheet.getLastRowNum();

    for(int icount=0;icount

    row = sheet.getRow(icount);

    int line=row.getPhysicalNumberOfCells();

    for(int j=0;j cell1= row.getCell(j);

    System.out.println(cell1 "--" icount "---" j);

    }

    }

    //打印读取值

    // System.out.println(cell.getStringCellValue());

    //新建一输出流

    FileOutputStream fout = new FileOutputStream(filename); //PS:filename 另存为的路径,不处理直接写入模版文件

    //存盘

    workbook.write(fout);

    fout.flush();

    //结束关闭

    fout.close();

    }

    public HSSFCell getCell(HSSFRow row, int index) {

    // 取得分发日期单元格

    HSSFCell cell = row.getCell(index);

    // 如果单元格不存在

    if (cell == null) {

    // 创建单元格

    cell = row.createCell(index);

    }

    // 返回单元格

    return cell;

    }

    public static void main(String[] args) {

    ExcelController ec = new ExcelController();

    try {

    ec.excel();

    } catch (FileNotFoundException e) {

    // TODO Auto-generated catch block

    e.printStackTrace();

    } catch (IOException e) {

    // TODO Auto-generated catch block

    e.printStackTrace();

    }

    }

    怎么用Java读取两个Excel里的数据并进行

    可以用GCExcel这个组件,GCExcel涵盖乎所有的Excel基本操作,并且可以无损导/导出 Excel ,包括数据透视表、图表、注释、条件格式、数据验证、公式、形状、图片、迷你图和表格,完全参照Excel的规范。适用于所有 Java 6.0 及以上标准的平台,无需 Microsoft Excel 依赖 ,即可快速批量操作 Excel 文件,

    java如何读取整个excel文件的内容?

    /**

    *

    *:readExcel*描述:Excel文件数据* @param excelfilePath Excel文件路

    * @param startRow 开始行

    * @param startCol 开始列

    * @return List>

    * @throws IOException

    * @throws BiffException

    */

    public List> readExcel(String excelfilePath,int startRow, int startCol)

    throws IOException, BiffException {

    // 读取xls文件

    InputStream ins = new FileInputStream(excelfilePath);

    // 设置读文件编码

    WorkbookSettings setEncode = new WorkbookSettings();

    setEncode.setEncoding("UTF-8");

    Workbook rwb = Workbook.getWorkbook(ins, setEncode);

    List> alldata = new ArrayList>();

    Map data = null;

    alldata.clear();

    // 获得当前Excel表共有几sheet

    Sheet[] sheets = rwb.getSheets();

    // 获得表数

    int pages = sheets.length;

    // 将excel表中的数据读取出来

    // 在从Excel中读取数据的时候不需要知道每个sheet有几行,有那多少列

    for (int i = 0; i < pages; i ) {

    //这里读取excel中每个sheet的数据,Sheet sheet = rwb.getSheet(i); 读取第二个sheet就是getSheet(1);

    Sheet sheet = rwb.getSheet(i);

    int cols = sheet.getColumns(); // 列

    // 读取每一行对应的列数目

    // 循环读取每一行的全部列数目的内容

    int rows = sheet.getRows(); // 行

    for (int r = startRow; r < rows; r ) {

    data = new HashMap();

    // 行循环,Excel的行列是从(0,0)开始

    for (int c = startCol; c < cols; c ) {

    Cell excelRows = sheet.getCell(c, r);

    data.put("bgbh", excelRows.getContents());

    }

    alldata.add(data);

    }

    }

    ins.close();

    return alldata;

    }

    在java中如何读取Excel中第二个sheet表对象中数据

    package edu.sjtu.erplab.poi;

    import java.io.InputStream

    展开全文
  • java上传excel文件并读取表格信息

    千次阅读 2017-12-14 17:14:11
    public void readExcel()throws Exception{  HttpServletRequest request = ServletActionContext.getRequest();  HttpServletResponse response= Struts2Utils.getResponse();  //获取要保存文件夹
    public void readExcel()throws Exception{
    
            HttpServletRequest request = ServletActionContext.getRequest();
            HttpServletResponse response= Struts2Utils.getResponse();
            //获取要保存文件夹的物理路径(绝对路径)
            String realPath="E:/DWSurvey/src/main/webapp/file/upload/";
            String filename=UUID.randomUUID().toString().replaceAll("-", "")+".xls";
            File file = new File(realPath);       
            //测试此抽象路径名表示的文件或目录是否存在。若不存在,创建此抽象路径名指定的目录,包括所有必需但不存在的父目录。
            if(!file.exists())file.mkdirs();     
            try {
                //保存文件
                FileUtils.copyFile(myFile, new File(file,filename));//myFile可当参数传进来,这边用的structs2是在外面定义了这个属性
            } catch (IOException e) {
                e.printStackTrace();
            }
            List<PageData> listPd = (List)ObjectExcelRead.readExcel(realPath, filename, 2, 0, 0);    //执行读EXCEL操作,读出的数据导入List 2:从第3行开始;0:从第A列开始;0:第0个sheet    
            /**
             * var0 :昵称
             * var1 :登录名
             * var2 :邮箱
             * var3 :角色
             * var4 :学校
             * var5 :密码
             */
            for(int i=0;i<listPd.size();i++){

                System.out.println(listPd.get(i).getString("var0"))

           }     

        }

    //PageDate类

    public class PageData extends HashMap implements Map{
        
        private static final long serialVersionUID = 1L;
        
        Map map = null;
        HttpServletRequest request;
        
        public PageData(HttpServletRequest request){
            this.request = request;
            Map properties = request.getParameterMap();
            Map returnMap = new HashMap();
            Iterator entries = properties.entrySet().iterator();
            Map.Entry entry;
            String name = "";  
            String value = "";  
            while (entries.hasNext()) {
                entry = (Map.Entry) entries.next();
                name = (String) entry.getKey();
                Object valueObj = entry.getValue();
                if(null == valueObj){
                    value = "";
                }else if(valueObj instanceof String[]){
                    String[] values = (String[])valueObj;
                    for(int i=0;i<values.length;i++){
                         value = values[i] + ",";
                    }
                    value = value.substring(0, value.length()-1);
                }else{
                    value = valueObj.toString();
                }
                returnMap.put(name, value);
            }
            map = returnMap;
        }
        
        public PageData() {
            map = new HashMap();
        }
        
        public Map getMap() {
            return map;
        }
        
        @Override
        public Object get(Object key) {
            Object obj = null;
            if(map.get(key) instanceof Object[]) {
                Object[] arr = (Object[])map.get(key);
                obj = request == null ? arr:(request.getParameter((String)key) == null ? arr:arr[0]);
            } else {
                obj = map.get(key);
            }
            return obj;
        }
        
        public String getString(Object key) {
            return (String)get(key);
        }
        
        @SuppressWarnings("unchecked")
        @Override
        public Object put(Object key, Object value) {
            return map.put(key, value);
        }
        
        @Override
        public Object remove(Object key) {
            return map.remove(key);
        }

        public void clear() {
            map.clear();
        }

        public boolean containsKey(Object key) {
            // TODO Auto-generated method stub
            return map.containsKey(key);
        }

        public boolean containsValue(Object value) {
            // TODO Auto-generated method stub
            return map.containsValue(value);
        }

        public Set entrySet() {
            // TODO Auto-generated method stub
            return map.entrySet();
        }

        public boolean isEmpty() {
            // TODO Auto-generated method stub
            return map.isEmpty();
        }

        public Set keySet() {
            // TODO Auto-generated method stub
            return map.keySet();
        }

        @SuppressWarnings("unchecked")
        public void putAll(Map t) {
            // TODO Auto-generated method stub
            map.putAll(t);
        }

        public int size() {
            // TODO Auto-generated method stub
            return map.size();
        }

        public Collection values() {
            // TODO Auto-generated method stub
            return map.values();
        }

    }

    //readExcel方法

    public class ObjectExcelRead {

        /**
         * @param filepath //文件路径
         * @param filename //文件名
         * @param startrow //开始行号
         * @param startcol //开始列号
         * @param sheetnum //sheet
         * @return list
         */
        public static List<Object> readExcel(String filepath, String filename, int startrow, int startcol, int sheetnum) {
            List<Object> varList = new ArrayList<Object>();

            try {
                File target = new File(filepath, filename);
                FileInputStream fi = new FileInputStream(target);
                HSSFWorkbook wb = new HSSFWorkbook(fi);
                HSSFSheet sheet = wb.getSheetAt(sheetnum);                     //sheet 从0开始
                int rowNum = sheet.getLastRowNum() + 1;                     //取得最后一行的行号

                for (int i = startrow; i < rowNum; i++) {                    //行循环开始
                    
                    PageData varpd = new PageData();
                    HSSFRow row = sheet.getRow(i);                             //行
                    int cellNum = row.getLastCellNum();                     //每行的最后一个单元格位置

                    for (int j = startcol; j < cellNum; j++) {                //列循环开始
                        
                        HSSFCell cell = row.getCell(Short.parseShort(j + ""));
                        String cellValue = null;
                        if (null != cell) {
                            switch (cell.getCellType()) {                     // 判断excel单元格内容的格式,并对其进行转换,以便插入数据库
                            case 0:
                                cellValue = String.valueOf((int) cell.getNumericCellValue());
                                break;
                            case 1:
                                cellValue = cell.getStringCellValue();
                                break;
                            case 2:
                                cellValue = cell.getNumericCellValue() + "";
                                // cellValue = String.valueOf(cell.getDateCellValue());
                                break;
                            case 3:
                                cellValue = "";
                                break;
                            case 4:
                                cellValue = String.valueOf(cell.getBooleanCellValue());
                                break;
                            case 5:
                                cellValue = String.valueOf(cell.getErrorCellValue());
                                break;
                            }
                        } else {
                            cellValue = "";
                        }
                        
                        varpd.put("var"+j, cellValue);
                        
                    }
                    varList.add(varpd);
                }

            } catch (Exception e) {
                System.out.println(e);
            }
            
            return varList;
        }
       
    }

    展开全文
  • java如何读取excel表格的信息Java如何读取excel表格的信息,用java读取excel表格信息的方法:1。pass [workbook.getworkbook(新文件(‘ e ://excel . xls ‘)];】代码获取要读取的excel电子表格文件;2、【book . ...

    java如何读取excel表格的信息Java如何读取excel表格的信息,用java读取excel表格信息的方法:1。pass [workbook.getworkbook(新文件(‘ e ://excel . xls ‘)];】代码获取要读取的excel电子表格文件;2、【book . getsheet(0);】获取表格信息。

    289182e57d614c93a312dccab387ba03.png

    这个教程操作环境:windows7系统,java10版本10,戴尔G3电脑。此方法适用于所有品牌的电脑。

    相关免费学习推荐:java基础教程

    java读取excel表格信息的方法:

    第一步是在我们的电脑上找到要读取的excel表格。这里读的版本是xls格式的excel,也就是2003年的版本,如下图所示:

    13f2e01ae895fb5a98bd298859f64e02.png

    第二步:打开eclipse软件,新建一个java项目和类,添加jxl.jar包,如下图所示:

    f2626c00efb2579aa27119f548213ba3.png

    第三步:通过练习册。getworkbook(新文件(‘ e://excel。xls’);获取要读取的excel表格文件的代码,book . getsheet(0);获取表格中的第一张工作表信息,如下图所示:

    22e652186e1b05e5cc427bdb3445c187.png

    第四步,通过while循环获取工作表中每一行的每个单元格信息,并传递sheet.getCell(0,I);代码实现,最后通过cell1.getContents()代码打印出表格单元格信息,如下图所示:

    dde63da1bd0d88e67f954272a4336bff.png

    第五步:当我们运行java项目时,可以看到excel电子表格信息已经成功打印在控制台上,如下图所示:

    d6fc31ff2063a86dc06820e733876c64.png

    第六步:我们也可以通过poi阅读excel表格的内容。poi可以读取2003年和2007年excel表格的版本,如下图所示:

    e252032bfee762b5bdbcac5ef5569e2e.png

    以上是java如何读取excel表格信息的详细内容。请多关注其他关于Lei.com PHP知识的相关文章!

    展开全文
  • Java读取excel表格一般都是用poi技术去读取excel表格的,但是这个技术又是什么呢什么是Apache POI?Apache POI是一种流行的API,它允许程序员使用Java程序创建,修改和显示MS Office文件。这由Apache软件基金会开发...
  • } /** * 读取excel内容 * * @param inputStream 文件 * @return Map> */ public static Map> readExcelContent(InputStream inputStream, String suffix) { getWorkbook(inputStream, suffix); Map> content = new ...
  • 在使用java的时候,希望从excel中读取到一些单元格的数据,供大家参考,具体内容如下1.Java读取的excel的api这里用到了一个叫jxl的api如下:... //java读取excel表使用的类import jxl.Cell; //java读...
  • 一般都是用poi技术去读取excel表格的什么是Apache POI?Apache POI是一种流行的API,它允许程序员使用Java程序创建,修改和显示MS Office文件。这由Apache软件基金会开发使用Java分布式设计或修改Microsoft Office...
  • 1、需求用java代码读取hello.xls表格中的数据2、hello.xls表格 3、java代码package com.test;import java.io.File;import jxl.*;public class ReadExcel{public static void main(String[] args) {int i;Sheet sheet...
  • 使用java读取excel表格

    千次阅读 2018-11-06 22:19:30
    1.Java读取excel的api 这里用到了一个叫jxl的api如下: &lt;dependency&gt; &lt;groupId&gt;net.sourceforge.jexcelapi&lt;/groupId&gt; &lt;artifactId&gt;jxl&lt;/...
  • Java读取Excel表格中的数据

    千次阅读 2020-12-28 18:34:06
    文章目录前言一、添加jar包文件1....本文主要讲述如何在Java读取Excel表中的数据并在控制台输出,实现工具为Eclipse 提示:以下是本篇文章正文内容,下面案例可供参考 一、添加jar包文件 描述:在Java中导入导出E
  • java 如何一列一列读取excel数据。网上好多资料只...InputStreaminp=newFileInputStream("workbook.xls");//InputStreaminp=newFileInputStream("workbook.xlsx");Workbookwb=WorkbookFactory.create(inp);...
  • java程序读取excel表格并存入mysql数据库详细教程

    万次阅读 多人点赞 2019-08-31 15:13:34
    Apache POI是Apache软件基金会的开放源码函式库,POI提供API给Java程序对Microsoft Office格式档案读和写的功能。 HSSF - 提供读写Microsoft Excel格式档案的功能。 XSSF - 提供读写Microsoft Excel OOXML格式档案...
  • javaExcel表格数据处理并以List集合返回(只要传Excel文件路径即可)
  • Java读取Excel表格中的日期

    热门讨论 2011-05-11 17:40:53
    通过Java读取Excel文件中的数据时,需要自动判断当前Cell中的数据格式是否日期格式,如果是就要做特殊处理,以便读出数据的格式与预想的相符。
  • 本人之前做过这个,使用jxl来操作Excel直接给你源码吧:/***判断文件能否存在,存在修改,不存在创建并添加数据**@paramroute*包名+路径*/@SuppressWarnings("null")publicvoidsaveZkfp(){Filefile=newFile(file...
  • JAVA EXCEL API:是一开放源码项目,通过它Java开发人员可以读取Excel文件的内容、创建新的Excel文件、更新已经存在的Excel文件。使用该API非Windows操作系统也可以通过纯Java应用来处理Excel数据表。因为它是使用...
  • Java读取和写入Excel表格

    万次阅读 多人点赞 2019-07-29 14:33:04
    Java读取excel表格并将数据存入数据库1. 绪论2. 程序范例2.1 JXL 创建Excel文件 1. 绪论 POI Apache POI是Apache软件基金会的开放源码函数库,POI提供API给Java程序对Microsoft Office格式档案读写功能。 HSSF ...
  • Java程序读取Excel表格里的内容并显示在Swing界面里。
  • 读取本地的Excel,将内容读取到内容; 2. 创建实体类 package com.greatmicro.ates.settle.core.domain.vo; import lombok.Data; /** * @author wql * @date 2021/10/18 13:37 */ @Data public class ...
  • java 读取 Excel表格内容

    千次阅读 2019-12-08 14:09:38
    读写Excel,这么重要且普遍的问题,伟大的apache,早就为我们封装好了jar包,供...--读取 excel 的所需jar包--> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi<...
  • Java读取并导出Word中的表格(Excel),导出文件为Excel
  • java poi读取excel表格数据

    千次阅读 2016-11-22 15:34:26
    package com.tl.web.signup.util; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.io.

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 18,341
精华内容 7,336
关键字:

java读取上传的excel表格

java 订阅