首页 > java > JAVA读取word,excel内容

JAVA读取word,excel内容

2010年5月6日 阅读(659 ) 发表评论 阅读评论

上次介绍了用java读取rtf文件格式的内容,那用java语言怎么来读取word文档以及excel中的内容,这些在编程的时候是经常会用到的,java读取word文档及Excel的内容在java的API中没有是没有现成的类或方法的,所以我们要用到一个控件——POI控件:POI控件的下载及配置
下面就是关于java读取word和Excel内容的代码:
java 读取 word 文档 内容:

package com.util;
import java.io.*;
import org.apache.poi.hwpf.extractor.WordExtractor;   

public class WordReader {
    public WordReader(){
    }
    /**
     * @param filePath 文件路径
     * @return 读出的Word的内容
     */
    public String getTextFromWord(String filePath){
        String result = null;
        File file = new File(filePath);
        try{
            FileInputStream fis = new FileInputStream(file);
            WordExtractor wordExtractor = new WordExtractor(fis);
            result = wordExtractor.getText();
        }catch(FileNotFoundException e){
            e.printStackTrace();
        }catch(IOException e){
            e.printStackTrace();
        };
        return result;
    }
}

java 读取 excel 文档 内容:

package com.util;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFCell;   

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;   

public class ExcelReader {   

    @SuppressWarnings("deprecation")
    /**
     * @param filePath 文件路径
     * @return 读出的Excel的内容
     */
    public String getTextFromExcel(String filePath) {
        StringBuffer buff = new StringBuffer();
        try {
            //创建对Excel工作簿文件的引用
            HSSFWorkbook wb = new HSSFWorkbook(new FileInputStream(filePath));
            //创建对工作表的引用。
            for (int numSheets = 0; numSheets < wb.getNumberOfSheets(); numSheets++) {
                if (null != wb.getSheetAt(numSheets)) {
                    HSSFSheet aSheet = wb.getSheetAt(numSheets);//获得一个sheet
                    for (int rowNumOfSheet = 0; rowNumOfSheet <= aSheet.getLastRowNum(); rowNumOfSheet++) {
                        if (null != aSheet.getRow(rowNumOfSheet)) {
                            HSSFRow aRow = aSheet.getRow(rowNumOfSheet); //获得一个行
                            for (int cellNumOfRow = 0; cellNumOfRow <= aRow.getLastCellNum(); cellNumOfRow++) {
                                if (null != aRow.getCell(cellNumOfRow)) {
                                    HSSFCell aCell = aRow.getCell(cellNumOfRow);//获得列值
                                    switch(aCell.getCellType()){
                                        case HSSFCell.CELL_TYPE_FORMULA:
                                            break;
                                        case HSSFCell.CELL_TYPE_NUMERIC:
                                            buff.append(aCell.getNumericCellValue()).append('\t');break;
                                        case HSSFCell.CELL_TYPE_STRING:
                                            buff.append(aCell.getStringCellValue()).append('\t');break;
                                }
                        }
                    }
                    buff.append('\n');
                    }
                }
            }
        }
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
        return buff.toString();
    }
}


声明:转载原创文章时请注明:
    文章转载自:快乐心情, 原文地址:JAVA读取word,excel内容

分类: java 标签: ,

Related Posts

  1. 本文目前尚无任何评论.
  1. 本文目前尚无任何 trackbacks 和 pingbacks.
icon_wink.gif icon_neutral.gif icon_mad.gif icon_twisted.gif icon_smile.gif icon_eek.gif icon_sad.gif icon_rolleyes.gif icon_razz.gif icon_redface.gif icon_surprised.gif icon_mrgreen.gif icon_lol.gif icon_idea.gif icon_biggrin.gif icon_evil.gif icon_cry.gif icon_cool.gif icon_arrow.gif icon_confused.gif icon_question.gif icon_exclaim.gif