【问题标题】:Reading and modifying an HTML file in Java在 Java 中读取和修改 HTML 文件
【发布时间】:2012-07-14 05:59:59
【问题描述】:

我有一个 HTML 文件,我要做的就是将该文件存储到某个数组或大字符串中,然后进行必要的修改。我必须包含一些 Javascript 和其他一些具有属性的元素,并且还必须消除其中的一些。谁能帮我做这件事。谢谢!

<?xml version="1.0" encoding="UTF-8"?>  
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">  
<html xmlns="http://www.w3.org/1999/xhtml">  
<head>  
<meta http-equiv="Content-type" content="text/html;  charset=utf-8" />  
<title>eXe</title>  
<style type="text/css">  
@import url(base.css);  
@import url(content.css);  
</style>  
<script type="text/javascript" src="common.js"></script>
<!--HERE I NEED TO INCLUDE 3 MORE JAVASCRIPTS-->  
</head>  
<body>  
<div id="outer">  
<div id="main">  
<div id="nodeDecoration">  
<p id="nodeTitle">  
Part 1</p>  
</div>  
<div class="TrueFalseIdevice" id="id12">  
<script type="text/javascript" src="common.js"></script>  
<!--THIS JAVASCRIPT HAS TO BE ELIMINATED-->  
<script type="text/javascript" src="libot_drag.js"></script>  
<div class="iDevice emphasis1">  
<img alt="" class="iDevice_icon" src="icon_question.gif" />  
<span class="iDeviceTitle">True-False Question</span><br/>  
<div class="iDevice_inner">  
<div id="ta12_16" class="block" style="display:block">  

</div><div class="question">  
<br/><br/><div id="taquestion0b12" class="block" style="display:block">1><span style="color: #000000; font-family: Verdana,Arial,Helvetica,sans-serif; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; background-color: #ffffff; display: inline ! important; float: none"> SQL Stands for Structure Query Language?</span>   

<!--THIS ONCLICK EVENT HAS TO BE REMOVED-->  
</div><br/>True <input type="radio" name="option0b12" id="true0b12" onclick="getFeedback(0,2,'0b12','truefalse')"/>   
False <input type="radio" name="option0b12" id="false0b12" onclick="getFeedback(1,2,'0b12','truefalse')"/>  
<div id="s0b0b12" style="color: rgb(0, 51, 204);display: none;" even_steven="18">Correct! </div>  
<div id="s1b0b12" style="color: rgb(0, 51, 204);display: none;" even_steven="19">Incorrect! </div>  
<div id="sfbk0b12" style="color: rgb(0, 51, 204);display: none;"><div id="tafeedback0b12" class="block" style="display:block">  
<!--HERE I NEED TO INCLUDE A SUBMIT BUTTON-->
</div></div>  
</div>  
</div>  
</div>  
</body></html> 

【问题讨论】:

  • @Genzer 嗨,我尝试使用 BufferedReader 读取文件,但我不知道如何在其中添加所需的元素。我通过查看此示例进行了尝试-stackoverflow.com/questions/8563294/…

标签: java html arrays string file


【解决方案1】:

Java 已经有一个解析器,称为 DOM,可以为您提供帮助。你可以使用这样的东西:

File theXML = new File("C:\\path\\to\\file.xml");
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document doc = builder.parse(theXML);
doc.getDocumentElement().normalize();

如果您曾经使用过 JavaScript DOM,您应该知道现在该做什么,使用 doc.getElementsByTagName 或类似的东西。如果没有,请查看the oracle tutorial

【讨论】:

  • 非常感谢您的建议。我现在就这样试试。
【解决方案2】:

你可以使用this的方式来读取你的html(变成String)。之后,您的任务实际上是对String 进行拆分、替换和插入,最后,使用与从 HDD 读取文件类似的方法将其全部写入 HDD 上的 html 文件。

【讨论】:

    猜你喜欢
    • 2014-10-20
    • 2015-04-29
    • 2011-04-23
    • 2013-09-16
    • 1970-01-01
    • 2017-11-19
    • 2019-02-08
    • 2012-02-27
    • 1970-01-01
    相关资源
    最近更新 更多