package myxml;
import javax.xml.parsers.*;
import org.w3c.dom.*;
import org.apache.crimson.tree.*;
import java.io.*;xmltagdir是myxml文件夹里的一个程序,怎么样引用呢?

解决方案 »

  1.   

    XMLTagDir声明没有?实例没有?还是一个静态变量?
      

  2.   

    我不太懂,你帮我看看源程序:怎么申明?
    package myxml;
    import javax.xml.parsers.*;
    import org.w3c.dom.*;
    import org.apache.crimson.tree.*;
    import java.io.*;/**
     * <p>Title: </p>
     * <p>Description: </p>
     * <p>Copyright: Copyright (c) 2002</p>
     * <p>Company: </p>
     * @author unascribed
     * @version 1.0
     */public class DomCreateDemo {
       private Document doc;   public DomCreateDemo() throws Exception{
          DocumentBuilderFactory factory=DocumentBuilderFactory.newInstance();
          DocumentBuilder builder=factory.newDocumentBuilder();
          doc=builder.newDocument();
       }   public void createDocument(){
             if(doc==null) return;
             Element peopleElement=doc.createElement(XMLTagDir.NODE_PEOPLE);
             for(int i=1;i<=3;i++){
                Element personElement=doc.createElement(XMLTagDir.NODE_PERSON);
                personElement.setAttribute("PERSONID","E"+i);            //one person include several tags
                Text text=null;
                Element nameElement=doc.createElement(XMLTagDir.NODE_NAME);
                text=doc.createTextNode("myName"+i);
                nameElement.appendChild(text);
                personElement.appendChild(nameElement);            Element addressElement=doc.createElement(XMLTagDir.NODE_ADDRESS);
                text=doc.createTextNode("myAddress"+i);
                addressElement.appendChild(text);
                personElement.appendChild(addressElement);            Element telElement=doc.createElement(XMLTagDir.NODE_TEL);
                text=doc.createTextNode("myTel"+i);
                telElement.appendChild(text);
                personElement.appendChild(telElement);            Element faxElement=doc.createElement(XMLTagDir.NODE_FAX);
                text=doc.createTextNode("myFax"+i);
                faxElement.appendChild(text);
                personElement.appendChild(faxElement);            Element emailElement=doc.createElement(XMLTagDir.NODE_EMAIL);
                text=doc.createTextNode("myEmail"+i);
                emailElement.appendChild(text);
                personElement.appendChild(emailElement);            peopleElement.appendChild(personElement);
             }
             doc.appendChild(peopleElement);
       }   public void saveDocument(String path) throws IOException {
          FileWriter fout=new FileWriter(path);
          XmlDocument xmldoc=(XmlDocument)doc;
          xmldoc.write(fout);
          fout.close();
       }   public static void main(String[] args) {
          try{
             DomCreateDemo doc = new DomCreateDemo();
             doc.createDocument();
             System.out.print("doc created");
             String path="f:/bishe/classes/xmldoc/jhbcreateOut.xml";
       //      String path="f:/bishe/JavaAdvance/dist/xmldoc/createOut.xml";
             doc.saveDocument(path);
             System.out.print("file saved");
          }catch(Exception e){
             e.printStackTrace();
          }
       }
    }
    //javac -d ..\classes -classpath ..\classes;..\lib\j2ee.jar; .\myxml\DomCreateDemo.java
    //java -classpath ..\lib\j2ee.jar; myxml.DomCreateDemo
      

  3.   

    哈哈
    你的编译选想错了
    看看了你的代码,你指定了package名称再编译的时候如果指定了-d的话那么会再生成一个myxml
    目录这样的话package的层次就错了
    所以简单一点的做法就是不要使用-d选项而是直接编译以后吧文件拷贝到package目录使用就可以了我没有认真检查你的代码就是使用NetBeans看了看好像没有什么问题