Atitit word结构化提取考试试题读取 poi读取word nlp aiprj 目录 1.1. 结构化后数据 1 1.2. 文字读取 1 1.3. 图片读取 1 1.4. Doc的表格读取 /
Atitit word结构化提取考试试题读取 poi读取word nlp aiprj
目录
1.1. 结构化后数据 1
1.2. 文字读取 1
1.3. 图片读取 1
1.4. Doc的表格读取 //遍历range范围内的table。 2
1.5. code 2
- 结构化后数据
{
"linenum":85,
"topicNum":8,
"linenumEnd":95,
"topicType":"8.singlechoice[单选题](3分)68494d9cc2bb4396af50b30fc9e79d63\u00A0",
"topic":"Servlet生命周期的初始化在什么时候会调用init()方法( A )",
"ans":"A"
}
- 文字读取
文字操作中,可以通过HWPFDocument 直接读取,也可以获取到Range对象后读取
- 图片读取
Doc获取文档中的所有图片,并存储,其中Picture 对象中,getContent()可获取字节流,然后获取字节数据,自己写出来,也可以通过writeImageContent 来直接写,图片的开始位置可以获取,但是结束位置没有
- Doc的表格读取 //遍历range范围内的table。
TableIterator tableIter = new TableIterator(range);
while (tableIter.hasNext()) {
Table table = tableIter.next();
//开始位置
int start = table.getStartOffset();
//结束位置
int end = table.getEndOffset();
System.out.printf("开始位置%d,结束为止%d\r\n",start,end);
//获取行的数目
int rowNum = table.numRows();
for (int j = 0; j < rowNum; j++) {
//获取每一行
TableRow row = table.getRow(j);
int cellNum = row.numCells();
for (int k = 0; k < cellNum; k++) {
//获取每一列
TableCell cell = row.getCell(k);
// 输出单元格的文本
System.out.println(cell.text().trim());
}
}
}
---------------------
- code
package apkg;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
import java.rmi.NoSuchObjectException;
import java.text.Collator;
import java.util.Arrays;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
import java.util.Locale;
import java.util.Map;
import java.util.Set;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import org.apache.commons.io.FileUtils;
import org.apache.poi.POIXMLProperties.CoreProperties;
import org.apache.poi.hwpf.HWPFDocument;
import org.apache.poi.hwpf.usermodel.Range;
import org.apache.poi.xwpf.extractor.XWPFWordExtractor;
import org.apache.poi.xwpf.usermodel.XWPFDocument;
import com.alibaba.fastjson.JSON;
import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
import com.google.common.collect.Sets;
public class kaosiWordExt {
public static void main(String[] args) throws IOException {
// readTwoMannamesFileJoin();
// String f="C:\\Users\\Administrator\\Desktop\\namelib\\好听的女孩名字2225个.docx";
// List<String> femnames=getList2220femNnames(f,1);
// System.out.println(femnames);
// FileUtils.writeLines(new File("D:\\namelib\\fem2200names.txt"), femnames);
String f="D:\\0db\\人工智能1807javaA-云计算《电子商务》第3周周考理论题.doc";
// List<Map> femnames=getList(f);
HWPFDocument doc = new HWPFDocument(new FileInputStream(f));
//通过 Doc对象直接获取Text
StringBuilder sb = doc.getText();
String string = sb.toString();
System.out.println(string);
FileUtils.write(new File("d:\\doc2txt.txt"), string);
//通过Range对象获取Text
Range range = doc.getRange();
String text = range.text();
System.out.println(text);
List<Map> topics=Lists.newLinkedList();
String[] lines=string.split("\r");
for(int lineIdx=1;lineIdx<=lines.length;lineIdx++)
{
if(lineIdx==7)
System.out.println("d");
int linesListIdex=lineIdx-1;
String line=lines[linesListIdex].trim();
if(line.length()==0)
continue;
System.out.println(" lineIdx :"+lineIdx);
if(lineIdx==404)
System.out.println("d");
if(KaosiUtil.isTopicStart(line.trim()))
{
Map topic=Maps.newLinkedHashMap();
topic.put("linenum", lineIdx);
topic.put("topicNum",KaosiUtil.gettopicNum(line.trim()));
topic.put("linenumEnd", KaosiUtil.getNextTopicLineNum(lines,lineIdx+1));
topic.put("topicType",line.trim());
topic.put("topic",KaosiUtil.gettopic(lines,lineIdx+1));
topic.put("ans",KaosiUtil.getAnsBytopictitle( topic.get("topic").toString() ));
topics.add(topic);
System.out.println(JSON.toJSONString(topic, true));
}
}
}
(9+条消息)POI之Word文档读取-yellowcong - yelllowcong的专栏 - CSDN博客.html
Atitit word结构化提取考试试题读取 poi读取word nlp aiprj 目录 1.1. 结构化后数据 1 1.2. 文字读取 1 1.3. 图片读取 1 1.4. Doc的表格读取 /相关推荐
- 2022胺基化工艺考试试题及答案
题库来源:安全生产模拟考试一点通公众号小程序 2022胺基化工艺考试题模拟考试题库系胺基化工艺复习题新版习题库!2022胺基化工艺考试试题及答案依据胺基化工艺新考试大纲.胺基化工艺模拟考试试题随时根据 ...
- 2020磺化工艺证考试及磺化工艺考试试题
题库来源:安全生产模拟考试一点通公众号小程序 2020磺化工艺证考试及磺化工艺考试试题,包含磺化工艺证考试答案解析及磺化工艺考试试题练习.由安全生产模拟考试一点通公众号结合国家磺化工艺考试最新大纲及磺 ...
- 历届计算机ab级考试试题,完整word版,计算机一级考试试题及答案,推荐文档
计算机一级考试试题 一.选择题 1.下列软件中____一定是系统软件. A.自编的一个C程序,功能是求解一个一元二次方程 B.WINDOWS操作系统 C.用汇编语言编写的一个练习程序 D.存储有计算机 ...
- 2019c语言程序设计试题答案,2019年C语言程序设计期末考试试题及其答案【Word版资料】...
版权声明:以上文章中所选用的图片及文字来源于网络以及用户投稿,由于未联系到知识产权人或未发现有关知识产权的登记,如有知识产权人并不愿意我们使用,如果有侵权请立即联系:55525090@qq.com,我 ...
- 计算机应用基础考试试题及答案 在word中,用户建立的文件默认,2009年10月全国自考计算机应用基础历年真题...
全国2009年10月计算机应用基础试题及答案,本试卷是为考计算机应用基础考试的考生准备的试题及答案练习. 一.单项选择题(本大题共34小题,每小题1分,共34分) 1.冯·u35834X依曼结构计算机 ...
- 计算机应用基础考试试题及答案 在word中,用户建立的文件默认,天津大学《计算机应用基础》2016年12月考试期末大作业考核试题...
请同学及时保存作业,如您在20分钟内不作操作,系统将自动退出. <计算机应用基础>2016年12月考试期末大作业考核试题 试卷总分:100 测试时间:-- 单选题 一.单选题(共50 道试 ...
- 计算机应用基础考试试题及答案 在word中,用户建立的文件默认,自考计算机应用基础试题及参考答案...
一.填空题(每空1分,共30分) 1.计算计的软件系统通常分成______软件和______软件. 2.字长是计算机______次能处理的______进制位数. 3.1KB=______B:1MB=_ ...
- java期末考试试题及答案_(完整word版)java期末考试试题(含答案)
模拟B卷 考试说明: 1.使用Eclipse编写程序.项目名称为:班级_姓名_学号_卷号.注意:卷号为A或B 2.在项目文件夹下新建一个文本文件,文件名为:答案.txt 3.将编程题外的所有题目写在文 ...
- office计算机二级第26套word,全国计算机等级考试二级msoffice高级应用(word部分:第11-20套).docx...
PAGE / NUMPAGES 全国计算机等级考试 二级MS Office高级应用 (Word部分:第11-20套) [第11套] 在考生文件夹下打开文档WORD.DOCX,按照要求完成下列操作并以该 ...
- html转换成word文档没有边框,解决 apache poi 转换 word(docx) 文件到 html 文件表格没边框的问题...
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 ${表格匹配信息} 30 31 32 33 ...
最新文章
- 【JSConf EU 2018】Ryan Dahl: Node.js 的设计错误
- Java数据结构与算法——树(基本概念,很重要)
- Linux内核开发之将驱动程序添加到内核
- C++文件类(文件流类)及用法详解
- C++函数的传入参数是指针的指针(**)的详解
- 碎片化学习的三大障碍及破解之道
- element label动态赋值_浅析 vuerouter 源码和动态路由权限分配
- kali linux set工具,求助: 社会工程学工具set 出现错误for kali linux.
- php高德地图坐标在多边形,多边形的绘制和编辑
- VMware 虚拟机如何连接网络,且远程可连接
- DelphiMVC连接池配置
- 19.Virtual Type
- Android 扩展ViewFlipper做导航页(一)
- 导入android工程报错,eclipse导入appcompat项目报错解决办法
- 记账用哪个软件比较好?
- SetupFactory安装前卸载旧版本
- 封玩家IP和机器码以及解开被封的教程
- 工程线图中计算机的处理方法,CAD建筑施工图绘制复杂施工放线方法
- [文档]腾讯云使用手册之云服务器-VPS简介
- 酷客scrm发布:陌生人扫码进群原来是这么回事