之前,我问了一个有关用Java提取RAR归档文件的问题,有人指出我指向JUnrar。官方网站已关闭,但由于我在网上发现了很多有关它的讨论,因此它似乎已被广泛使用。
有人可以告诉我如何使用JUnrar提取存档中的所有文件吗?我在网上找到了一个小片段,但似乎不起作用。它显示存档中的每个项目都是一个目录,即使它是一个文件。
Archive rar = new Archive(new File("C://Weather_Icons.rar"));
FileHeader fh = rar.nextFileHeader();
while(fh != null){
if (fh.isDirectory()) {
logger.severe("directory: " + fh.getFileNameString() );
}
//File out = new File(fh.getFileNameString());
//FileOutputStream os = new FileOutputStream(out);
//rar.extractFile(fh, os);
//os.close();
fh=rar.nextFileHeader();
}
谢谢。
可能您还应该检查此代码段代码。可以在下面找到其副本。
public class MVTest {
/**
* @param args
*/
public static void main(String[] args) {
String filename = "/home/rogiel/fs/home/movies/vp.mp3.part1.rar";
File f = new File(filename);
Archive a = null;
try {
a = new Archive(new FileVolumeManager(f));
} catch (RarException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
if (a != null) {
a.getMainHeader().print();
FileHeader fh = a.nextFileHeader();
while (fh != null) {
try {
File out = new File("/home/rogiel/fs/test/"
+ fh.getFileNameString().trim());
System.out.println(out.getAbsolutePath());
FileOutputStream os = new FileOutputStream(out);
a.extractFile(fh, os);
os.close();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (RarException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
fh = a.nextFileHeader();
}
}
}
}
JUnRar是一个采用纯Java实现的rar文件压缩和解压缩的开源类库。
因此,我一直在使用Python3.2和OpenPyXL的iterable工作簿,如这里的“优化阅读器”示例所示。 当我尝试使用此策略读取从简单文档中提取的一个或多个文件时,就会出现问题。zip存档(手动和通过python zipfile包)。当我调用我得到“A”和我得到1,当要求打印每个单元格的值时,如下所示: 它打印A1、A2、A3、A4、A5、A6和A7中的值,而不管文件实际有多大。文件本身没
问题内容: 我正在尝试从.jar文件中提取文件。我该如何使用命令行? 我正在运行Windows 7 问题答案: 从文档: 要从jar文件中提取文件,请使用,如下所示: 要仅从jar文件中提取某些文件,请提供其文件名: 该文件夹可能不适合您,在我的Windows分区上是: 除非的位置在您的路径环境变量中,否则您必须指定完整路径/从文件夹内部运行程序。 编辑: 这是另一篇文章,专门针对提取JAR:ht
问题内容: 我想使用Python从HTML文件中提取文本。如果要从浏览器复制文本并将其粘贴到记事本中,我希望得到的输出基本上相同。 我想要比使用正则表达式更强大的功能,而正则表达式可能在格式不正确的HTML上失败。我见过很多人推荐美丽汤,但是使用它时遇到了一些问题。例如,它拾取了不需要的文本,例如JavaScript源。此外,它没有解释HTML实体。例如,我希望' 在HTML源代码中转换为
问题内容: 我有这个示例xml文件 我喜欢提取标题标签和内容标签的内容。 使用模式匹配或使用xml模块,哪种方法最适合提取数据。还是有更好的方法来提取数据。 问题答案: 特别是已经有一个内置的XML库。例如:
问题内容: 我需要使用iText从pdf文件中提取文本。 问题是:一些pdf文件包含2列,当我提取文本时,我得到一个文本文件,其中的列作为结果合并(即同一行中两列的文本) 这是代码: 你能帮我完成这个任务吗? 问题答案: 我是iText文本提取子系统的作者。您需要做的是开发自己的文本提取策略(如果您看一下如何实现的话,就会发现您可以提供可插拔的策略)。 您将如何确定列的开始和停止位置完全取决于您-