0

我有一个问题,对于一个项目,我有两个包(A 和 B),其中包含一些 .xml、.gif、.js、.html 文件等。我的任务是从包 A 转换为 B。对于第一步转换我用 XSLT 做的需要一个 XML 到另一个 XML。第二步是将丢失的 javascripts 文件从文件夹(包)B 包含到 A 中,这是我使用 java 程序完成的。现在我的第三个任务是修改包 A 的 .html 文件,以包含我从 B 复制的那些 javascripts 元素和其他元素(一个提交按钮)。所以任何人都可以帮我解决这个问题。

包 A 的 HTML(来源)-

<?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>
</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>
<script type="text/javascript" src="libot_drag.js"></script>
<div class="iDevice emphasis1">
......
.......
</div></html>

包 B 的 HTML(必填)-

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

          <title>eXe</title>
        <meta http-equiv="Content-Type" content="text/html;  charset=utf-8" />
    <style type="text/css">
@import url(base.css);
@import url(content.css);
</style>
<script type="text/javascript" src="common.js"></script>
</head>
<!--TO BE INCLUDED-->
<script type="text/javascript" src="APIWrapper.js"></script>
<script type="text/javascript" src="SCOFunctions.js"></script>
<!---->
<body onload="loadPage()" onunload="unloadPage()"><div id="outer">
<div id="main">
<div id="nodeDecoration">
<p id="nodeTitle">
Part 1</p></div>
<div class="QuizTestIdevice" id="id8">
.....
......
.......
<!--This submit button also has to be included-->
<br/><input type="submit" name="submitB" value="SUBMIT ANSWERS"/>
......
......
....
</div></html>
4

1 回答 1

1

您可以将 HTML 解析为 XML 信息集(有几个可用的 HTML 解析器,包括TagSoup),使用 XSLT 进行转换,并使用 XSLT 的HTML 输出模式序列化回 HTML 。

或者您可以尝试使用正则表达式来处理这个问题,希望您可以为源 HTML 中的每个相关部分找到一个合适的表达式。

于 2012-07-09T08:48:17.507 回答