CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
花落谁家,你作主! 盛大widget设计大赛英雄榜
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Java >  Web Services / XML

请教一个Jdom的问题

楼主voodoo_man(潇湘夜雨)2004-12-01 16:53:11 在 Java / Web Services / XML 提问

用jdom输出xml文档,但是输出的xml却没有<?xml   version="1.0"   encoding="GB2312"?>  
  在另外的地方用SAXBuilder   build的时候就会出UFTException   请问如何解决  
  生成xml部分代码:  
  Format   f   =   Format.getCompactFormat();  
  f.setEncoding("gb2312");  
  f.setIndent("         ");  
  XMLOutputter   xo   =   new   XMLOutputter(   f   );  
  ...  
  xo.output(   xxx,   new   FileWriter(xxx)   );  
   
  读取xml的部分代码  
  SAXBuilder   builder   =   new   SAXBuilder();  
  Document   doc   =   builder.build(   xmlFile   );  
  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  
  这句会扔出异常,因为没有<?xml   version="1.0"   encoding="GB2312"?>  
   
  问题点数:0、回复次数:7Top

1 楼lhz_9712(晃晃悠悠)回复于 2004-12-01 16:59:36 得分 0

俺的一个测试程序,没发现你说的问题,是有开头的  
  ---------------------------------------------------  
   
  import   java.io.*;  
  import   org.jdom.*;  
  import   org.jdom.input.*;  
  import   org.jdom.output.*;  
   
  public   class   JDOMsax   {  
   
  public   void   saxDoc(File   file,   OutputStream   out)   throws   IOException,   JDOMException  
  {  
  SAXBuilder   builder   =   new   SAXBuilder("org.apache.xerces.parsers.SAXParser",   false);  
  // DOMBuilder   builder   =   new   DOMBuilder("org.jdom.adapters.XercesDOMAdapter",   true);  
  Document   Doc   =   builder.build(file);  
  XMLOutputter   XMLOut   =   new   XMLOutputter();  
   
  XMLOut.output(Doc,   out);  
  }  
   
  public   static   void   main(String[]   args)  
  {  
  try  
  {  
  JDOMsax   ins   =   new   JDOMsax();  
  System.out.println("=======================================");  
  ins.saxDoc(new   File("d:/xml/stu.xml"),   System.out);  
  System.out.println("=======================================");  
  }  
  catch(Exception   e)  
  {  
  e.printStackTrace();  
  }  
  }  
   
  }Top

2 楼voodoo_man(潇湘夜雨)回复于 2004-12-01 17:09:32 得分 0

谁知道为什么Top

3 楼umljsp(夜未央,天未白)回复于 2004-12-01 17:13:42 得分 0

不晓得你的Format是从哪里获得的?  
  试试我的:  
  XMLOutputter   outputter   =   new   XMLOutputter(Format.getPrettyFormat());    
  Format   format   =   outputter.getFormat();  
  format.setEncoding("GB2312");  
  outputter.setFormat(format);Top

4 楼voodoo_man(潇湘夜雨)回复于 2004-12-02 11:04:13 得分 0

还是不行,是不是这个版本的jdom有问题Top

5 楼123xxx(香克斯)回复于 2004-12-02 11:14:22 得分 0

这是我的代码,用的是jdom1.0,没出现楼主那种问题          
  Document   doc   =   new   Document();  
  Format   format   =   Format.getPrettyFormat();  
  format.setEncoding("gb2312");  
  format.setIndent("       ");  
  XMLOutputter   outp   =   new   XMLOutputter(format);    
  outp.output(doc,   new   FileOutputStream("1.xml"));Top

6 楼lazy_du(红楼梦魇)回复于 2004-12-02 17:50:54 得分 0

能换的话就不要用1.0了吧Top

7 楼yz790724(想想)回复于 2004-12-02 18:26:50 得分 0

markTop

相关问题

  • JDOM xml declaration
  • JDOM的问题
  • 配置jdom
  • jdom的问题
  • 关于jdom
  • jdom问题
  • JDOM怎么配置
  • 关于jdom的问题.
  • jdom增加ProcessingInstruction 问题
  • jdom增加接点问题

关键词

  • 代码
  • document
  • xml
  • xmloutputter
  • jdom
  • jdomsax
  • saxbuilder
  • format
  • setencoding
  • outputter

得分解答快速导航

  • 帖主:voodoo_man

相关链接

  • CSDN Java频道
  • Java类图书
  • Java类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo