java实现访百度文库、道客巴巴、豆丁阅读

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

java实现访百度文库、道客巴巴、豆丁阅读

2013-01-14

文/叶秋雨

前言:

最近在帮一个学校做培训系统,里面有一个模块是课程在线学习(笼统的讲就是在线预览word/ppt之类的)。由于学校要求文档是保密的,只能在线预览,不提供下载、复制等操作。因此,我们想到了百度文库、道客巴巴、豆丁阅读等实现方式。前期在网上找了很多资料,也请教了部分网友。但总是觉得网上写的不是那么的详细,很多很多都是直接复制,有些地方没有做必要的提示。所以想把自己的实现方式写下来,供大家参考。写的不好,请大家多多指教。

实现方式(来源于网络):

·方式一

Txt/Word/Excel/PPT=>PDF(OpenOffice+JodConverter)=>SWF(pdf2swf)=>Flex Paper

·方式二

Txt/Word/Excel/PPT=>PDF(MSOffice+JACOB)=>SWF(pdf2swf)=>FlexPaper ·方式三

Txt/Word/Excel/PPT=>SWF (FlashPaper)=> FlexPaper

·方式四

Txt/Word/Excel/PPT=>SWF(print2flash)=> FlexPaper

在此,我选择了第一种方式,选择其他三种方式的人,欢迎百度hi我进行交流。

工具支持:

OpenOffice、JodConverter、Swftools(pdf2swf)、FlexPaper

至于下载地址,我本来想附上的(因为我前面写过几篇技术整合文档,都附上了相应的工具下载地址),但我相信在搜索引擎这么强大的今天,身为技术人员的你,会有办法的,所以本人以后的技术文档,不再附上相应的工具下载地址,请自行搜索下载,如实在解决不了,请联系我(文档最后会附上联系方式)。

具体实现:

备注:

本人的开发环境(工具)为:

Microsoft Windows XP SP3

eclipse3.7.0

jdk1.6.0_29

apache-tomcat-7.0.20

第一步:

·下载工具OpenOffice、JodConverter、Swftools(pdf2swf)、FlexPaper ·安装OpenOffice,本人的安装路径为:C:\Program Files\ 3 ·安装Swftools(pdf2swf),本人的安装路径为:D:\Program Files\SWFTools

第二步:

·打开eclipse,新建工程readonline。

·解压jodconverter-2.2.2.zip,把压缩包中lib目录下的jar包放到工程WEB-INF/lib中,如下图:

·在工程readonline下的WebRoot下新建flexpaper文件夹,然后把下载的FlexPaper_1.4.5_flash.zip解压缩后的内容放到该文件夹中,如下图:

第三步:

·新建servlet包,然后在包下面新建ConvertServlet类,代码如下:package servlet;

import java.io.File;

import java.io.IOException;

import javax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import javax.servlet.http.HttpSession;

import com.artofsolving.jodconverter.DocumentConverter;

import

com.artofsolving.jodconverter.openoffice.connection.OpenOfficeConnect ion;

import

com.artofsolving.jodconverter.openoffice.connection.SocketOpenOfficeC onnection;

import

com.artofsolving.jodconverter.openoffice.converter.OpenOfficeDocument Converter;

public class ConvertServlet extends HttpServlet{

private File sourceFile; //转换源文件

private File pdfFile; //PDF目标文件

private File swfFile; //SWF目标文件

private Runtime r;

public void init() throws ServletException {

//注意路径

sourceFile = new File("G:/

apache-tomcat-7.0.20/webapps/readonline/swfFile/s.ppt");

pdfFile = new File("G:/

apache-tomcat-7.0.20/webapps/readonline/swfFile/s.pdf");

swfFile = new File("G:/

apache-tomcat-7.0.20/webapps/readonline/swfFile/s.swf");

System.out.println("第一步:生成文件对象,准备转换");

}

@Override

protected void doGet(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

doPost(request, response);

}

@Override

protected void doPost(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

//转换成pdf文件

if(sourceFile.exists()) {

if(!pdfFile.exists()) {

OpenOfficeConnection connection = new SocketOpenOfficeConnection(8100);

try {

connection.connect();

DocumentConverter converter = new OpenOfficeDocumentConverter(connection);

converter.convert(sourceFile, pdfFile);

pdfFile.createNewFile();

connection.disconnect();

System.out.println("第二步:转换为PDF格式路径" + pdfFile.getPath());

相关文档
最新文档