epublib java_使用Epublib处理epub文件 | 学步园
通过wlw发布在我的博客funba.cn
希望csdn能重新支持wlw
Epublib是一个用于处理epub文件的java类库,可以对epub文件进行读写处理;而且提供了一个阅读器,可以直接运行(java -jar 方式),并可以打开epub类型的文件进行阅读。
1、这个例子在epublib-core\src\examples\java\nl\siegmann\epublib\examples下,如果自己在eclipse里新建项目,需要把epublib-core\src\test\resources\book1复制到你代码所在的Source folder下,
当然也可以自己改代码,不过目的是快速测试下epublib的可用性,第一步工作就力求简单了。
2、运行报错,
Exception in thread "main" java.lang.NoClassDefFoundError: org/xmlpull/v1/XmlPullParserFactory
at nl.siegmann.epublib.epub.EpubProcessorSupport.createXmlSerializer(EpubProcessorSupport.java:79)
at nl.siegmann.epublib.epub.EpubProcessorSupport.createXmlSerializer(EpubProcessorSupport.java:73)
at nl.siegmann.epublib.epub.NCXDocument.createNCXResource(NCXDocument.java:182)
at nl.siegmann.epublib.epub.NCXDocument.createNCXResource(NCXDocument.java:178)
at nl.siegmann.epublib.epub.EpubWriter.initTOCResource(EpubWriter.java:67)
at nl.siegmann.epublib.epub.EpubWriter.write(EpubWriter.java:51)
at outfox.cps.epub.Simple1.main(Simple1.java:56)
很明显是NoClassDefFoundError,实际是没有引入依赖包kxml2
实际在mvn package时,已经下载了,可以打开epublib-core\pom.xml查看如下代码,
net.sf.kxml
kxml2
2.3.0
下载目录是你的m2的repository目录
C:\Users\Administrator\.m2\repository\net\sf\kxml\kxml2\2.3.0
将kxml2-2.3.0.jar引入工程,再运行ok
3、生成的epub文件直接打开是乱码,需要用epub阅读器打开,Epublib自带了一个阅读器,
通过epublib-tools\target\epublib-tools-viewer-3.1.jar打开生成的epub文件即可
epublib java_使用Epublib处理epub文件 | 学步园相关推荐
- 自动挂载ios_Ubuntu自动挂载iso文件 | 学步园
在Ubuntu10.10上通过Crossover装了一个Longman5,因为时.iso文件安装到,所以每次启动都要把.iso文件挂载上才能使用. $ sudo mount -o loop -t is ...
- java windows so文件_windows下编译使用NDK,调用SO文件 | 学步园
下载后把压缩包解压出来,例如:D:\ndk,目录下的ndk-build.cmd就是用来编译的批处理命令. 这里以D:\ndk\samples\hello-jni为例,打开D:\ndk\samples\ ...
- matlab如何读取csv,Matlab:如何读取CSV文件以及如何读取带有字符串数据项的CSV文件 | 学步园...
CSV,逗号分开的文件,如果能快速的读取这些文件中的数据,无疑会帮助我们解决很多问题. 1. 只有数据的CSV文件,CSV file that includes only numbers. As an ...
- java读取mxl_Dom4j 读取一个XML文件和将String写成XML文件 | 学步园
dom4j保存文件xml格式和读取XML文件内容,代码如下: package com.qmjs.imut import java.io.File; import java.io.FileWriter; ...
- maven 打包替换文件_使用Maven打包生成文件 | 学步园
状况:Maven会自动package一些文件到默认目录,或我们会指定一些文件生成到指定目录.比如一些配置文件,一些脚本. 需求:将这些需要文件打包成一个gz压缩包 方法: 1. 建立assembly文 ...
- python压缩文件操作_python处理zip压缩文件 | 学步园
从简单的角度来看的话,zip格式会是个不错的选择,而且python对zip格式的支持够简单,够好用. 1)简单应用 如果你仅仅是希望用python来做压缩和解压缩,那么就不用去翻文档了,这里提供一个简 ...
- python模拟浏览器下载文件_python第一个脚本,模拟浏览器下载文件 | 学步园
用wget命令下载文件总是失败.用python脚本模拟浏览器下载,代码如下: #!/usr/bin/python import sys from urllib import FancyURLopene ...
- sudoers修改_为用户增加sudo权限(修改sudoers文件) | 学步园
在使用Linux系统过程中,通常情况下,我们都会使用普通用户进行日常操作,而root用户只有在权限分配及系统设置时才会使用,而root用户的密码也不可能公开.普通用户执行到系统程序时,需要临时提升权限 ...
- 使用python处理wps表格_用python写wps的excel文件 | 学步园
参考了网上的一些帖子,试了一下用python写wps的excel文件(需要windows操作系统,安装了wps的表格处理程序,安装了pywin32)--我安装的是WPS个人版,可以免费使用的. imp ...
最新文章
- 图灵奖得主Judea Pearl:从“大数据革命”到“因果革命”
- 我在大厂,下班了也戴着工牌
- 读《大话设计模式》有感
- binary search tree python_二叉查找树(binary search tree)——python实现
- 2021牛客多校3 - Minimum grid(二分图最大匹配-最大流)
- python3.8.2中文手册chm_springboot2.2.X手册:构建全局唯一的短链接数据中心
- 多数公司容易犯的5个大数据错误
- oracle 两表两列数据对比_Oracle、PostgreSQL与Mysql数据写入性能对比
- 生成名片二维码 python
- Python——使用Flask框架封装接口
- mysql漏洞扫描工具_Rad爬虫结合W13Scan扫描器挖掘漏洞
- 个人使用mysql_MySql使用总结
- (凭什么断点要放入堆栈?)微机学习:第八课
- 【electron】nsis重编译,自定义nsis校验弹窗警告的文案
- python ipaddr库_python访问纯真IP数据库的代码
- k2p H大老毛子 padavan 2月20日固件
- 如何搭建清晰易懂的数据看板?
- python自学篇——PyGame模块的所有功能函数详解
- 单层石墨烯工业化量产科研成果及工业化量产基地落地
- 企企通SRM:由“制造”到“智造”,高科技电子行业如何打造智慧供应链?
热门文章
- .NET Core WebApi中实现多态数据绑定
- asp.net core高级应用:TagHelper+Form
- .NET 十五岁,谈谈我眼中的.NET
- IdentityServer4 ASP.NET Core的OpenID Connect OAuth 2.0框架学习保护API
- 回顾build 2016:你好,这是微软迄今最好的Windows开发平台
- Oracle区分中文和英文,oracle中中英文段落划分实现
- Android之RxJava(一)
- 思科asa5515端口映射_Cisco ASA端口映射
- pads中如何设置等长_期货如何设置止损止盈避免交易中被套-期货学习
- 你的女神今日结婚了!!!你失恋了......