如何使用java从excel表提取内容

如何使用java从excel表提取内容,第1张

以下是使用java从excel表提取内容的程序 -

import javaioFile;import javaioFileInputStream;import orgapachetikametadataMetadata;import orgapachetikaparserParseContext;import orgapachetikaparsermicrosoftooxmlOOXMLParser;import orgapachetikasaxBodyContentHandler;public class ExtractContentFromExcel {

public static void main(String args[]) throws Exception {

// detecting the file type

BodyContentHandler handler = new BodyContentHandler();

Metadata metadata = new Metadata();

FileInputStream inputstream = new FileInputStream(new File("excelExamplexlsx"));

ParseContext pcontext = new ParseContext();

// OOXml parser

OOXMLParser msofficeparser = new OOXMLParser();

msofficeparserparse(inputstream, handler, metadata, pcontext);

Systemoutprintln("Contents of the document:" + handlertoString());

Systemoutprintln("Metadata of the document:");

String[] metadataNames = metadatanames();

for (String name : metadataNames) {

Systemoutprintln(name + ": " + metadataget(name));

}

}}Java

原ODF文件:excelExamplexlsx 的内容如下 -

执行上面示例代码,得到以下结果 -

SLF4J: Class path contains multiple SLF4J bindings

SLF4J: Found binding in [jar:file:/F:/worksp/javaexamples/libs/tika_libs/tika-app-116jar!/org/slf4j/impl/StaticLoggerBinderclass]

SLF4J: Found binding in [jar:file:/F:/worksp/javaexamples/libs/tika_libs/tika-server-116jar!/org/slf4j/impl/StaticLoggerBinderclass]

SLF4J: See >

需要对Excel中的数据进行读取 *** 作。一、在开始进行Java读写Excel前,需要先下一个jxl的jar包,这个jar包中提供了相关读写Excel的方法,将jxljar放到classpath下或者在工程的buildpath中添加jxljar后,便可以开始Java读写Excel了。二、Java读取Excel数据,首先,创建一个xls文件(如:jxltestxls),然后在文件中添加一些数据,Excel文件创建完成后,便可以开始写代码读取了。三、进行一个小小的扩展,读取一个目录下的所有Excel文件,读取的每个Excel文件的数据写入到不同的txt中。四、生成EXCEL需要手动写查询语句把ORACLE数据库中的数据查询出来,再通过 *** 作写到EXCEL文件里面。通过EXCEL把数据读取到ORACLE,同样需要去读取EXCEL工作薄里面的内容,再通过INSERT语句去插入数据库 *** 作。

<%@ page contentType="text/html; charset=gb2312"%>

<%@ page import="javaio,jxl,jxlwrite,jxlwrite,jxlformat"%>

<%@page import="javasql"%>

<%@page import="javautil"%>

<%@ page import="javaawt"%>

<%@ page import="orgapachecommonsfileupload"%>

<%@ page import="comjspsmartSmartFile"%>

<jsp:useBean id="common" class="comteachdbcommonMethod" scope="page">

</jsp:useBean>

<%//实现EXCEL文件上传,上传之后把EXCEL文件中的内容导入SQL server数据库中

//用smartUpload组件把EXCEL文件上传

comjspsmartSmartUpload smartUpload = new comjspsmartSmartUpload(); //初始化smartUPload

smartUploadinitialize(pageContext);

smartUploadservice(request, response);

smartUploadupload();

comjspsmartSmartFile file = smartUploadgetFiles()getFile(0); //得到上页输入的文件

//取中文表单参数

String newFileName = "testxls";

//改名上传

filesaveAs("excel/" + newFileName, smartUploadSAVE_VIRTUAL);

%>

<%!public String codeToString(String str) {//处理中文字符串的函数

String s = str;

try {

byte tempB[] = sgetBytes("ISO-8859-1");

s = new String(tempB);

return s;

} catch (Exception e) {

return s;

}

}

%>

<html>

<head>

<title></title>

</head>

<body>

<%//得到前页传过来的参数

String courseId=sessiongetAttribute("courseId")toString();

%>

<%String path = requestgetRealPath("\\") + "excel" + "\\"

+ "testxls";//Excel文件URL

InputStream is = new FileInputStream(path);//写入到FileInputStream

jxlWorkbook wb = WorkbookgetWorkbook(is); //得到工作薄

jxlSheet st = wbgetSheet(0);//得到工作薄中的第一个工作表

int rsRows = stgetRows(); //得到excel的总行数

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

Cell cell0 = stgetCell(0, i);//得到工作表的第一个单元格,即A1

Cell cell1 = stgetCell(1, i);//得到工作表的第二个单元格,即A1

try {

String content0 = cell0getContents();//getContents()将Cell中的字符转为字符串

int content1 = IntegerparseInt(cell1getContents()); //得到条形码

//存入数据库

String sql = "insert into sy_score(courseId,scoreStudentName,score)"

+ "values("

+ courseId

+ ",'"

+ content0

+ "',"

+ content1+")";

Systemoutprintln(sql);

commonDel_Insert(sql); //执行SQL语句

} catch (Exception e) {

//如果EXCEL文件中输入的数据有错,则跳过此行数据

sessionsetAttribute("message", "有错误,不能导入,请检查您的excel文件");

continue;

}

}

wbclose();//关闭工作薄

isclose();//关闭输入流

responsesendRedirect("insert_donejsp"); //转到成功页

%>

</body>

</html>

这是jsp 的

需要下载 jxl包

还有struts的 需要的话也可以给你

以上就是关于如何使用java从excel表提取内容全部的内容,包括:如何使用java从excel表提取内容、Java怎么获取Excel中的sheet页数量和名称、浅谈JAVA读写Excel的几种途径等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9577928.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-29
下一篇2023-04-29

发表评论

登录后才能评论

评论列表(0条)

    保存