我用sun公司的XML分析器,碰到了问题。 用什么版本的jdk?建议用1.4的好了,自带。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 书上有可能用sun早期的XML开发包 那你有没有把下载的包放到CLASSPATH环境变量中啊? jdk1.4正式的早出来了,还不去down? 把你下载的程序中的jar文件放到jdk目录下的lib目录里 parser是sun自己的解析器,所以不会放在java package,jaxp里面也有解析器是w3c的sax,dom,如果你需要parser包,我可以给你 看这个我在项目中使用的自编类(jdk:1.3):import javax.xml.parsers.*;import org.xml.sax.*;import org.w3c.dom.*;import java.io.*;//xml解析类public class XMLInterface implements Serializable{ public static Document openXMLFile(String filename) { Document doc = null; DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); dbf.setNamespaceAware(true); dbf.setValidating(false); dbf.setIgnoringComments(false); dbf.setIgnoringElementContentWhitespace(false); dbf.setCoalescing(false); dbf.setExpandEntityReferences(true); DocumentBuilder db = null; try { db = dbf.newDocumentBuilder(); } catch (ParserConfigurationException pce) { return null; } try { doc = db.parse(new File(filename)); } catch (SAXException se) { return null; } catch (IOException ioe) { return null; } return doc; } public static String TranslateToXMLString(String src) { char csrc[]=src.toCharArray(); String des; des=src; int ipos; int ilen; ilen=src.length(); des=""; String sss; for(ipos=0;ipos<ilen;ipos++) { if(csrc[ipos]=='&') des+="&"; else if(csrc[ipos]=='\"') des+="""; else if(csrc[ipos]=='<') des+="<"; else if(csrc[ipos]=='>') des+=">"; else des+=csrc[ipos]; } return des; } public static String GetNodeAttribute(Node nd, String attrName) { NamedNodeMap nnm; Node na; nnm=nd.getAttributes(); if(nnm==null) return null; na=nnm.getNamedItem(attrName); if(na==null) return null; return na.getNodeValue(); }}使用之前先确定你下载的那个那个解析包(crimson.jar和xalan.jar)是否引入了(classpath的设置是否正确) 不好意思,、代码中少了一个"}",给加上吧: .... try { doc = db.parse(new File(filename)); }//这里加上 } catch (SAXException se) { .... 非常感谢,我的EMAIL:[email protected]! 你下载的只是JAXP,只是一个接口而已。你还需要下载parser,可以使用xerces or crimson, please download it from http://xml.apache.org 帮忙改下正则表达式. 谢谢 新手,急求问题!!请各位好心的哥哥姐姐们帮忙解答! java串口编程 struts+hibernate+spring程序调试出错(那位高手帮忙看看,谢谢) log4j的问题 统计下,谢谢各位给我们新手提供第一手资料 什么是J2EE,我刚开始学,一点也不明白。 怎样让网页中的路径跟随网络地址的变化而变化 在java中直接中断程序用什么呢? DEBUG NewPooledConnection:294 J2EE TUTORIAL 里面提到了 thin-client & thick client 谁能说说什么是j2ee connnector?
import org.xml.sax.*;
import org.w3c.dom.*;
import java.io.*;//xml解析类
public class XMLInterface implements Serializable
{
public static Document openXMLFile(String filename)
{
Document doc = null;
DocumentBuilderFactory dbf =
DocumentBuilderFactory.newInstance();
dbf.setNamespaceAware(true);
dbf.setValidating(false);
dbf.setIgnoringComments(false);
dbf.setIgnoringElementContentWhitespace(false);
dbf.setCoalescing(false);
dbf.setExpandEntityReferences(true);
DocumentBuilder db = null;
try {
db = dbf.newDocumentBuilder();
} catch (ParserConfigurationException pce) {
return null;
}
try {
doc = db.parse(new File(filename));
} catch (SAXException se) {
return null;
} catch (IOException ioe) {
return null;
}
return doc;
}
public static String TranslateToXMLString(String src)
{
char csrc[]=src.toCharArray();
String des;
des=src;
int ipos;
int ilen;
ilen=src.length();
des="";
String sss;
for(ipos=0;ipos<ilen;ipos++)
{
if(csrc[ipos]=='&') des+="&";
else if(csrc[ipos]=='\"') des+=""";
else if(csrc[ipos]=='<') des+="<";
else if(csrc[ipos]=='>') des+=">";
else des+=csrc[ipos];
}
return des;
}
public static String GetNodeAttribute(Node nd, String attrName)
{
NamedNodeMap nnm;
Node na;
nnm=nd.getAttributes();
if(nnm==null) return null;
na=nnm.getNamedItem(attrName);
if(na==null) return null;
return na.getNodeValue();
}
}使用之前先确定你下载的那个那个解析包(crimson.jar和xalan.jar)是否引入了(classpath的设置是否正确)
....
try {
doc = db.parse(new File(filename));
}//这里加上
} catch (SAXException se) {
....
你还需要下载parser,可以使用xerces or crimson, please download it from http://xml.apache.org