Java 如何读取zip文件中的htm文件?
我有一个包含Index.htm的zip文件。我应该阅读Index.htm的内容,并在其中找到一个日期(2011年12月),然后用这个日期创建一个目录,然后在此目录中提取zip文件 这是html文件:Java 如何读取zip文件中的htm文件?,java,html,file,zip,Java,Html,File,Zip,我有一个包含Index.htm的zip文件。我应该阅读Index.htm的内容,并在其中找到一个日期(2011年12月),然后用这个日期创建一个目录,然后在此目录中提取zip文件 这是html文件: <HTML> <HEAD></HEAD> <BODY> <A Name="TopOfPage"></A> <TABLE Width="100%" Border="0" Cel
<HTML>
<HEAD></HEAD>
<BODY>
<A Name="TopOfPage"></A>
<TABLE Width="100%" Border="0" CellPadding="0" CellSpacing="0">
<TR>
<TD Width="30%"><A HRef="HeaderTxt/HetBCFI.htm">Het B.C.F.I.</A></TD>
</TR>
</TABLE>
<TABLE Width="100%" Border="0" CellPadding="0" CellSpacing="0">
<TR>
<TD RowSpan="2" Width="10"></TD>
<TD Width="70%"><STRONG><FONT Face="Arial" Size="2">Gecommentarieerd Geneesmiddelenrepertorium</FONT></STRONG></TD>
<TD Width="29%" Align="Right" Class= "Datum">
December 2011
</TD>
<TD Rowspan="2" Width="10"></TD>
</TR>
</TABLE> </BODY> </HTML>
Gecommentarieerd Geneesmiddelenrepertorium
2011年12月
几个步骤:
,您可以执行以下操作之一:
- 使用包含
的字符串创建另一个文档元素,并执行以下操作document.select(“:containsOwn(\u00a0)”).remove()代码>(摘自)
- 使用以下命令(假设要清理的字符串是
)htmlString
Jsoup.parse(htmlString.text()代码>
- 使用字符串的
函数来摆脱replaceAll()
- 使用java.util.zip包
- 使用一些html解析器(我建议)来获取日期字符串。这对你的情况会有帮助 获得日期字符串后,创建所需的目录 编辑:要删除
- 试试这个
,您可以执行以下操作之一:
- 使用包含
的字符串创建另一个文档元素,并执行以下操作document.select(“:containsOwn(\u00a0)”).remove()代码>(摘自)
- 使用以下命令(假设要清理的字符串是
)htmlString
Jsoup.parse(htmlString.text()代码>
- 使用字符串的
函数来摆脱replaceAll()
- 这是我使用的正确的结束代码:感谢大家提供了有用的提示
public static String getDateWithinHtmlInsideZipFile(File archive) {
ZipFile zp = new ZipFile(archive);
InputStream in = zp.getInputStream (zp.getEntry ("Index.htm"));
Document doc = Jsoup.parse(in, "UTF-8", "");
return doc.body().getElementsByClass("Datum").text().trim();
}
这是我使用的正确的结束代码:感谢大家提供的有用提示
public static String getDateWithinHtmlInsideZipFile(File archive) {
ZipFile zp = new ZipFile(archive);
InputStream in = zp.getInputStream (zp.getEntry ("Index.htm"));
Document doc = Jsoup.parse(in, "UTF-8", "");
return doc.body().getElementsByClass("Datum").text().trim();
}
额外步骤1.5:ZipFile zp=新ZipFile(“xxx.zip”);InputStream in=zp.getInputStream(zp.getEntry(“Index.htm”);我得到这样的结果:`2011年12月`我怎么能在我的字符串中省略呢?额外的步骤1.5:ZipFile zp=new ZipFile(“xxx.zip”);InputStream in=zp.getInputStream(zp.getEntry(“Index.htm”);我得到这样的结果:`2011年12月`I怎么能在我的字符串中省略呢?当我在我的字符串之前和结束时得到pars htm文件。如何摆脱它?更新了我的答案以解决您的问题。
String date=doc.body().getElementsByClass(“Datum”).html().toString().replaceAll(“,”).trim()代码>当我复制htm文件时,我会在字符串的前后得到它。如何摆脱它?更新了我的答案以解决您的问题。String date=doc.body().getElementsByClass(“Datum”).html().toString().replaceAll(“,”).trim()代码>