新手求救——关于DOM

说好不能打脸
Java领域优质创作者
博客专家认证
2005-03-03 08:33:59
最近刚开始学XML,看得一头雾水,小弟写了一段代码,大致如下(只保留了关键部分)

import java.io.File;
import java.io.FileWriter;
import java.io.Writer;
import java.io.FileNotFoundException;

import org.w3c.dom.Attr;
import org.w3c.dom.Document;
import org.w3c.dom.DOMException;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
import org.w3c.dom.Text;

import org.apache.xerces.dom.DOMImplementationImpl;//解析器
public class Test6 {
private Attr myAttr;//元素属性
private Document xmlDoc;//文档对象
private Element myElement,tempElement;//文档元素
private Node myNode;//节点对象
private Text myText;//该对象表示文档中的元素的内容
public Test6(){
/*初始化新建立的xml文档*/
DOMImplementationImpl domParser = new DOMImplementationImpl();
/**
* 以下代码建立一个新的xml树
* */
xmlDoc = domParser.createDocument(null,"table",null);

myElement = xmlDoc.getDocumentElement();//返回当前指向节点
myAttr = this.xmlDoc.createAttributeNS("id","1");
myElement.setAttributeNode(myAttr);//这两句设置了元素的一个属性

tempElement = xmlDoc.createElement("tr");
myText = this.xmlDoc.createTextNode("rktkreto");
this.myElement.appendChild(tempElement);
}

public static void main(String[] src){
new Test6();
}
}

用到的解析器是:org.apache.xerces.dom.DOMImplementationImpl;
在"DOMImplementationImpl domParser = new DOMImplementationImpl();"报错,错误提示:

java.lang.NoClassDefFoundError: org/apache/xerces/dom/DOMImplementationImpl
at xml.Test6.<init>(Test6.java:39)
at xml.Test6.main(Test6.java:66)
Exception in thread "main"

那位大哥救救我,还有一个问题:如何将一个修改好的dom树生成一个xml文档,好像要用到串行化,但怎么用呢?
...全文
235 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
说好不能打脸 2005-03-06
  • 打赏
  • 举报
回复
这个是sun代的,我现在用的是org.w3c的,可不可以用这种方式帮我写段代码??
谢谢
jinxfei 2005-03-05
  • 打赏
  • 举报
回复
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
doc = db.parse(docFile);
jinxfei 2005-03-05
  • 打赏
  • 举报
回复
javax.xml.parsers.DocumentBuilderFactory
这个类是java标准类。

  • 打赏
  • 举报
回复
xml是文本型的,生成的时候先用生成文本的方法,然后操作用dom就可以了
说好不能打脸 2005-03-04
  • 打赏
  • 举报
回复
谢谢楼上的各位,
请问jinxfei(jinxfei) 我没有找到产生工厂啊,请问在那个包里面啊??
我看了一下书上的例子,刚刚查阅了一些资料,真是大相径庭:书上的例子是直接示例化解析器,而一些资料上甚至就连解析器都没有就开始操作doc了,唉,误人子弟啊!!
jinxfei 2005-03-03
  • 打赏
  • 举报
回复
一般解析器都不是直接初始化的,都通过factory来生成吧。

至于写出到xml,好像有一写免费代码,好像叫xmlWriter什么的。

67,549

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧