如题,最近项目有需求,做这样的一个在线文本阅读器,要求是要将不同的文本格式的文件即时的展现出来,想做一个类似豆瓣、百度文库里的在线文本阅读器,怎么做啊,我没有思路,网上的资料也很少,请大家帮帮忙!!!

解决方案 »

  1.   

    根据文件的后缀名访问相应的severlet.<servlet-mapping>
      <servlet-name>WordAction</servlet-name>
      <url-pattern>*.doc</url-pattern>
    </servlet-mapping>
    在相应的severlet引用相应的包,读出文件内容,
    输出文本内容。
      

  2.   

    Servlet实现动态图文结合输出
    http://www.jspcn.net/htmlnews/11049320059681613.html
    不知道能不能给你点灵感
      

  3.   

    一种实现方式也是目前大部分浏览器打开在线文档的方式就是嵌入浏览器显示,目前浏览器一般都自带对应的流行阅读器比如pdf
    同理,其它类型是不是也可以按照这个思路 看一下下面这篇文章 重点是注册表那段 我没试过 楼主自己可以试试除了打开Internet上的网页,Internet Explorer还能够浏览本地文件夹及文件。如果浏览的是PDF文档或Office文档,有时候你会发现当调用Navigate("xxx.doc") 的时候,Adobe Reader/Acrobat或Office等Document Servers会在IE中嵌入自己的一个实例以打开相应的文件,当然有时候也会在独立的Acrobat或Office窗口中打开文件。
    在Adobe Reader/Acrobat的属性设置窗口中,我们可以找到“Display PDF in browser”的选项,如果勾上,则Navigate("xxx.pdf")将会以嵌入的方式在IE中浏览PDF文件,否则在独立的Adobe Reader/Acrobat窗口中浏览。但在Office的“选项”对话框中我们找不到这样的设置。问题:如何在自己的浏览器中控制Office这类 Ole Servers的打开方式?答案:修改文件夹选项,或修改注册表。方法1、如下所示,从控制面板中打开“文件夹”选项,在“文件类型”属性页上找到相应的文件后缀名,如“DOC”,点击“高级”按钮,在弹出的“编辑文件类型”对话框中有“在同一窗口中浏览”的选项,如果勾上,则以嵌入IE的方式打开文档,否则在独立窗口中打开。
    Open In Same Window Open In Same Window方法2、直接修改注册表。在“HKEY_LOCAL_MACHINE\SOFTWARE\Classes”键值下,保存了各种文件类型的注册信息,以Office 文档为例,与文档相关键值如下。文档类型 键值Microsoft Excel 7.0 worksheet Excel.Sheet.5Microsoft Excel 97 worksheet Excel.Sheet.8Microsoft Excel 2000 worksheet Excel.Sheet.8Microsoft Word 7.0 document Word.Document.6Microsoft Word 97 document Word.Document.8Microsoft Word 2000 document Word.Document.8Microsoft Project 98 project MSProject.Project.8Microsoft PowerPoint 2000 document PowerPoint.Show.8如果我们要修改Word文档的打开方式,,则在“HKEY_LOCAL_MACHINE\SOFTWARE\Classes \Word.Document.8”下新建一个名为“BrowserFlags”,类型为“REG_DWORD”的子键值,如果设置其值为“8”,则在独立的窗口中打开Word文档,否则在嵌入IE的Word窗口中打开文档。注:Microsoft Excel 7.0 worksheet稍有不同,应设置BrowserFlags的值为“9”方可在独立的窗口中打开文档。
    Office Document Setting参考资料:MSDN:259970:In-Place Activating Document Servers in Internet ExplorerMSDN:162059:How to configure Internet Explorer to open Office documents in the appropriate Office program instead of in Internet Explorer
      

  4.   

    去www.open-open.com去搜索合适的生成PDF的开源组件 再去搜索一个flash的PDF播放器
      

  5.   

    那都是转换成flash的,你得现在得考虑的是如何将其转换为flash文件
      

  6.   

    这个有3种解决方案:
    1、用google文档的API打开各种文档(word,ppt,excel,pdf等),这种方法的缺点是不稳定,有时候打不开,而且速度有点慢。
    2、调用本地office打开,像6楼说的那样。缺点是本地必须要安装OFFICE,而且文档可以保存到本地,这样你这个文档就让人下载了。
    3、像豆丁网,百度文库那样,把所有格式的文档都统一转换为swf格式的flash,然后就可以用IE浏览器在线打开了。至于转换的方法,简单的就是手动转换,要想自动化就自己想办法吧。。
      

  7.   

    我也最近在做这个,都转成swf格式,在用flexpaper打开就成
      

  8.   

    请问你是怎么实现的呢?我也用flexpaper ,但是一直显示不出来,右上角圈圈一直在转。?找了好久都没找到答案,跪求高手帮忙阿。
      

  9.   

    1新建Flex项目
    2在libs下放入FlexPaper_SDK4.swc
    3将.swf格式的文件放在src目录下
    4在组件中写入 文件的地址,如我放入了一个tu1.swf文件,在SwfFile中填入文件路径,如下即可
    <flexpaper:FlexPaperViewer id="paper" SwfFile="tu1.swf" />
      

  10.   

    flexpaper 需要到官方网站去添加文件或文件夹信任,这样 非常不方便而且不安全
      

  11.   


    在非windows的系统下能跑吗?