在页面上显示各种文档中的内容。在servlet中的逻辑

word:

BufferedInputStream bis = null;

URL url = null;

HttpURLConnection httpUrl = null; // 建立链接

url = new URL(urlReal);

httpUrl = (HttpURLConnection) url.openConnection();// 连接指定的资源

httpUrl.connect();// 获取网络输入流

bis = new BufferedInputStream(httpUrl.getInputStream());

String bodyText = null;

WordExtractor ex = new WordExtractor(bis);

bodyText = ex.getText();

response.getWriter().write(bodyText);

excel:

BufferedInputStream bis = null;

URL url = null;

HttpURLConnection httpUrl = null; // 建立链接

url = new URL(urlReal);

httpUrl = (HttpURLConnection) url.openConnection();// 连接指定的资源

httpUrl.connect();// 获取网络输入流

bis = new BufferedInputStream(httpUrl.getInputStream());

content = new StringBuffer();

HSSFWorkbook workbook = new HSSFWorkbook(bis);

for (int numSheets = 0; numSheets < workbook.getNumberOfSheets(); numSheets++) {

HSSFSheet aSheet = workbook.getSheetAt(numSheets);// 获得一个sheet

content.append("/n");

if (null == aSheet) {

continue;

}

for (int rowNum = 0; rowNum <= aSheet.getLastRowNum(); rowNum++) {

content.append("/n");

HSSFRow aRow = aSheet.getRow(rowNum);

if (null == aRow) {

continue;

}

for (short cellNum = 0; cellNum <= aRow.getLastCellNum(); cellNum++) {

HSSFCell aCell = aRow.getCell(cellNum);

if (null == aCell) {

continue;

}

if (aCell.getCellType() == HSSFCell.CELL_TYPE_STRING) {

content.append(aCell.getRichStringCellValue()

.getString());

} else if (aCell.getCellType() == HSSFCell.CELL_TYPE_NUMERIC) {

boolean b = HSSFDateUtil.isCellDateFormatted(aCell);

if (b) {

Date date = aCell.getDateCellValue();

SimpleDateFormat df = new SimpleDateFormat(

"yyyy-MM-dd");

content.append(df.format(date));

}

}

}

}

}

response.getWriter().write(content.toString());

ppt:

BufferedInputStream bis = null;

URL url = null;

HttpURLConnection httpUrl = null; // 建立链接

url = new URL(urlReal);

httpUrl = (HttpURLConnection) url.openConnection();// 连接指定的资源

httpUrl.connect();// 获取网络输入流

bis = new BufferedInputStream(httpUrl.getInputStream());

StringBuffer content = new StringBuffer("");

SlideShow ss = new SlideShow(new HSLFSlideShow(bis));

Slide[] slides = ss.getSlides();

for (int i = 0; i < slides.length; i++) {

TextRun[] t = slides[i].getTextRuns();

for (int j = 0; j < t.length; j++) {

content.append(t[j].getText());

}

content.append(slides[i].getTitle());

}

response.getWriter().write(content.toString());

pdf:

BufferedInputStream bis = null;

URL url = null;

HttpURLConnection httpUrl = null; // 建立链接

url = new URL(urlReal);

httpUrl = (HttpURLConnection) url.openConnection();// 连接指定的资源

httpUrl.connect();// 获取网络输入流

bis = new BufferedInputStream(httpUrl.getInputStream());

PDDocument pdfdocument = null;

PDFParser parser = new PDFParser(bis);

parser.parse();

pdfdocument = parser.getPDDocument();

ByteArrayOutputStream out = new ByteArrayOutputStream();

OutputStreamWriter writer = new OutputStreamWriter(out);

PDFTextStripper stripper = new PDFTextStripper();

stripper.writeText(pdfdocument.getDocument(), writer);

writer.close();

byte[] contents = out.toByteArray();

String ts = new String(contents);

response.getWriter().write(ts);

txt:

BufferedReader bis = null;

URL url = null;

HttpURLConnection httpUrl = null; // 建立链接

url = new URL(urlReal);

httpUrl = (HttpURLConnection) url.openConnection();// 连接指定的资源

httpUrl.connect();// 获取网络输入流

bis = new BufferedReader( new InputStreamReader(httpUrl.getInputStream()));

StringBuffer buf=new StringBuffer();

String temp;

while ((temp = bis.readLine()) != null) {

buf.append(temp);

response.getWriter().write(temp);

if(buf.length()>=1000){

break;

}

}

bis.close();

java在线阅读word_java在线预览txt、word、ppt、execel,pdf代码相关推荐

  1. HTML实现在线预览Excel,word,ppt

    使用office提供的在线预览功能 https://view.officeapps.live.... src后面接你需要预览的文件下载地址. 如果不能实现预览功能,提示报错 请检查http返回的Con ...

  2. java实现在线预览txt转pdf

    java实现在线预览txt转pdf 首先引入itext的jar包 <dependency><groupId>com.itextpdf</groupId><ar ...

  3. 最近很火的在线文件预览txt、doc、ppt、pdf、excel、jpg、png、zip、tar.gz等各种文件及压缩文件在线解压和预览,包括前后端设计和源码,编写搜索引擎多关键词检索名称和内容(四)

    最近很火的在线文件预览txt.doc.ppt.pdf.excel.jpg.mp4.png.zip.tar.gz等各种文件及压缩文件在线解压和预览,包括前后端设计和源码,编写一个文件搜索引擎实现多关键词 ...

  4. 最近很火的在线文件预览txt、doc、ppt、pdf、excel、jpg、png、zip、tar.gz等各种文件及压缩文件在线解压和预览,包括前后端设计和源码,编写搜索引擎多关键词检索名称和内容(五)

    最近很火的在线文件预览txt.doc.ppt.pdf.excel.jpg.mp4.png.zip.tar.gz等各种文件及压缩文件在线解压和预览,包括前后端设计和源码,编写一个文件搜索引擎实现多关键词 ...

  5. 在线文件/文档预览/分页分片预览 之开源kkfileview(word转pdf,pdf截取,pdf转图片,Aspose jobConverter , OpenOffice ,libreoffice )

    前提说明 浏览器不能直接浏览word文件,但可以浏览pdf文件!!! 可以后台把word,excel 转成成pdf.然后给前端预览: 业界常用的开源工具有:Aspose jobConverter ,  ...

  6. 文件在线预览doc,docx转换pdf(一)

    文件在线预览doc,docx转换pdf(一) 前言 文档转换是一个是一块硬骨头,但是也是必不可少的,我们正好做的知识库产品中,也面临着同样的问题,文档转换,精准的全文搜索,知识的转换率,是知识库产品的 ...

  7. vue-element-xlsx在线读取Excel数据预览

    vue-element-xlsx在线读取Excel数据预览 1.安装XLSX npm install xlsx -s 2.复制过去就可以用 <template><div>< ...

  8. vue实战--vue+elementUI实现多文件上传+预览(word/PDF/图片/docx/doc/xlxs/txt)

    需求 最近在做vue2.0+element UI的项目中遇到了一个需求:需求是多个文件上传的同时实现文件的在线预览功能.需求图如下: 看到这个需求的时候,小栗脑袋一炸.并不知道该如何下手,之前的实践项 ...

  9. 我的世界java一键修复_我的世界JAVA 1.14.2最新预览版发布 修复光源BUG

    原标题:我的世界JAVA 1.14.2最新预览版发布 修复光源BUG Minecraft 1.14.2 Pre-Release 3正式发布 更改内容: 修复几个BUG 现在加载存档时若遇到错误会向日志 ...

最新文章

  1. MyEclipse10中导入的jquery文件报错(出现红叉叉,提示语法错误)
  2. 多项NLP任务新SOTA,Facebook提出预训练模型BART​
  3. 零基础自学python的建议-你是如何自学 Python 的?
  4. 6、MySQL删除数据库(DROP DATABASE语句)
  5. php 根号2计算过程,根号2以及π的计算--关于无理数的畅想
  6. iOS vs. Android,应用设计该如何对症下药?
  7. 线性表中顺序表基本运算的实现---数据结构(C)
  8. 【李宏毅2020 ML/DL】P59 Unsupervised Learning - Auto-encoder
  9. 知识星球限时优惠活动,速进!
  10. syslinux linux 启动盘,syslinux启动盘制作
  11. Linux内核态调用用户态函数
  12. 用Python分析了5万条相亲网站数据,看相亲男女画像
  13. linux全角半角切换,教您输入法全角和半角怎么切换
  14. 深度解析UWB定位技术——隧道人员定位系统
  15. Mosquitto日志管理
  16. 十年,又回到原点,也许是个新的起点
  17. Prometheus普罗米修斯部署
  18. Mac HomebrewCN被墙
  19. 【HTML】固定左侧div,滚动右侧div
  20. ROS仿真--URDF

热门文章

  1. R语言描述性统计分析:假设检验
  2. R算数运算符:+、-、*、/、%%、%/%、^
  3. 简述神经网络的训练过程?
  4. 支持向量机SVM模型中C和gamma参数分别是什么?对模型有什么影响?
  5. vscode 显示最近打开的folder_vscode报错Module #x27;pygal#x27; has no #x27;Bar#x27; Member...
  6. 如何用c语言打出 * * * * * * * * * * * * *?
  7. R语言入门——ggplot2
  8. Python - 输出格式 (学习小结)
  9. 【文本分类】A C-LSTM Neural Network for Text Classification
  10. 计算项目中的代码行数:Count the Lines of Code (LOC)