import java.io.UnsupportedEncodingException
import java.net.URLDecoder
import java.util.ArrayList
import java.util.HashMap
import java.util.List
import java.util.Map
import javax.xml.parsers.DocumentBuilderFactory
import org.w3c.dom.Document
import org.w3c.dom.Element
import org.w3c.dom.NodeList
public class Baidu {
public static void main(String[] args) throws Exception {
List<String>list = display()
Map<String, String>map = run(list)
for (int i = 0i <list.size()i++) {
System.out.println(list.get(i) + "--" +map.get(list.get(i)))
}
}
private static String path
static {
path = Baidu.class.getResource("/test.xml").getPath()
try {
path = URLDecoder.decode(path, "utf-8")
} catch (UnsupportedEncodingException e) {
throw new RuntimeException(e)
}
}
// 得到normativeField中每项的值
public static List<String>display() throws Exception{
Document doc = getDocument(path)
NodeList list = doc.getElementsByTagName("normativeField")
List<String>normativeFieldList = new ArrayList<String>()
// 得到normativeField中每项的值加到normativeFieldList集合里
for (int i = 0i <list.getLength()i++) {
normativeFieldList.add(list.item(i).getTextContent())
}
return normativeFieldList
}
public static Map<String, String>run(List<String>list) throws Exception {
Map<String, String>map = new HashMap<String, String>()
Document doc = getDocument(path)
for (int i = 0i <list.size()i++) {
NodeList nodeListlist = doc.getElementsByTagName(list.get(i))
Element e = (Element) nodeListlist.item(0)
String value = e.getAttribute("value")
map.put(list.get(i), value)
}
return map
}
public static Document getDocument(String path) throws Exception {
Document doc = DocumentBuilderFactory.newInstance()
.newDocumentBuilder().parse(path)
return doc
}
}
控制台:
ID--eye1.id
xingming--eye1.name
xingbie--eye1.sex
nianling--eye1.age
shili--eye2.eyelight
shengao--eye2.high
tizhong--eye2.wealth
guomin--
gongfeizifei--eye1.pay
lianxifangshi--eye1.telephonenumber
bingli--eye1.content1
test.xml要在工程根目录下:
<?xml version="1.0" encoding="UTF-8"?>
<dataServiceResource>
<databasetype>relation</databasetype>
<normativeResource>
<normativeField>ID</normativeField>
<normativeField>xingming</normativeField>
<normativeField>xingbie</normativeField>
<normativeField>nianling</normativeField>
<normativeField>shili</normativeField>
<normativeField>shengao</normativeField>
<normativeField>tizhong</normativeField>
<normativeField>guomin</normativeField>
<normativeField>gongfeizifei</normativeField>
<normativeField>lianxifangshi</normativeField>
<normativeField>bingli</normativeField>
</normativeResource>
<sourceFieldsMap>
<ID value="eye1.id" />
<xingming value="eye1.name" />
<xingbie value="eye1.sex" />
<nianling value="eye1.age" />
<shili value="eye2.eyelight" />
<shengao value="eye2.high" />
<tizhong value="eye2.wealth" />
<guomin value="" />
<gongfeizifei value="eye1.pay" />
<lianxifangshi value="eye1.telephonenumber" />
<bingli value="eye1.content1" />
</sourceFieldsMap>
<sourceTables>
<table>eye1</table>
<table>eye2</table>
</sourceTables>
</dataServiceResource>
很简单的,给你现成的代码参考。
String a = "<name>javk</name>"out.println(a)
a=a.replace("<","&lt").replace(">","&gt")
out.println(a)
1-apache的POI,此方法对Excel的导出做的很好,目前对Word的导出方面的功能尚未完全。2-纯JavaScript脚本实现。主要通过客户端调用本机Office组件来实现。
3-在JSP页面引入头文件实现。
纯JavaScript脚本实现细节方面大体是创建一个word组件ActiveXObject('Word.Application'),用js通过表ID取得表内容然后保存到word,要注意的是js实现有很多不好的地方,例如Internet选项需要把ActiveX空间全部启用,安全级别设置为中。这样的话岂不是每台机器都要配置一下。其次每次生成word文档以后d出对话框(无法保存此文件,因为它已在别处打开(C:\...\STARTUP\Powerword.dot)),出现此问题就需要把C:\Documents and Settings\当前用户名\Application Data\Microsoft\Word\STARTUP下的Powerword.dot文件删除,每次遇到此问题就需要删除文件来解决,十分不方便。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)