用Java读取和修改HTML文件

时间:2012-07-14 18:57:22

标签: java html arrays string file

我有一个HTML文件,我要做的是将此文件存储到某个数组或大字符串中,然后执行所需的修改。我必须包含一些Javascripts和一些其他元素与属性,还必须消除其中的一些。任何人都可以帮助我做这件事。谢谢你!

<?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> 

2 个答案:

答案 0 :(得分:5)

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

答案 1 :(得分:0)

您可以使用this方式阅读您的html(进入String)。在那之后,你的任务实际上是做一些String拆分,替换和插入,最后,当你从HDD读取它时,使用simiar方法将它全部写入你的硬盘上的html文件