(100¥)求助-XML文件转成bytes[],进来就有分。十万火急,今天结贴,在线蹲着! 发送一个xml文件可以直接以一个文本文件的方式来发送FileWriter或者FileOutputStream 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 在Servlet环境下不需要转换为byte,直接通过PrintWriter回写到客户端就行了。 “我想,bytesSend参数是XML文件的转换结果”--没看明白你这句话的意思,如果byteSend是一个XML的Document对象,未经格式化和串行化,那么你可以使用以下的代码来回写xml,如果已经经过格式化和串行化,那么直接通过PrintWriter回写就行了。btw,下面代码中的srvCtx是封装过的Servlet环境,不同的应用请做变通处理。//XML Document系列化OutputFormat opformat = new OutputFormat( doc, "GB2312", true );XMLSerializer xmlSerializer = new XMLSerializer( srvCtx.getPrintWriter(), opformat );xmlSerializer.serialize( byteSend ); 感谢二位。就是说XML的Document对象必须格式化和串行化,然后PrintWriter回写。有些没理解的是:1,我有个XML的Document对象doc,系列化我该放在那里算是系列化完成。2,PrintWriter回写的方法?能给些实例代码最好了。这里面的使用我不是太清楚。 晕。。我不是把核心代码给你了吗?上面那些代码需要导入的包是:import javax.xml.parsers.DocumentBuilder;import javax.xml.parsers.DocumentBuilderFactory;import javax.xml.parsers.ParserConfigurationException;import org.apache.xml.serialize.OutputFormat;import org.apache.xml.serialize.XMLSerializer;import org.w3c.dom.Document;import org.w3c.dom.Element;其中OutputFormat和XMLSerializer是由Xerces提供的,古董的Crimson也提供了一个XmlDocument类,也可以完成类似的功能,只是和Xerces不兼容,不建议你使用。其它的接口来自JAXP,不同的解析器会对它们有不同的实现,这是需要注意的问题。 我不清楚的是srvCtx和doc分别是什么? イサコテメ簍シ」ャdocニ萍オセヘハヌト羞トbyteSend」ャメ狆エXMLオトDOMカヤマャホメソスエ惲・羞トハアコムxmlSerializer.serialize( byteSend );メサセ莊トdocクトチヒ」ャノマテ贅サセ莽・ヒクト。」。」//XML DocumentマオチミサッOutputFormat opformat = new OutputFormat( byteSend, "GB2312", true );XMLSerializer xmlSerializer = new XMLSerializer( srvCtx.getPrintWriter(), opformat );xmlSerializer.serialize( byteSend ); 晕死,忘了中文系统保存的记事本文件到了日文系统下就会变成乱码,上面那个回复的实际内容如下。-_-#======================================================================================不好意思,doc其实就是你的byteSend,亦即XML的DOM对象,我拷代码给你的时候把xmlSerializer.serialize( byteSend );一句的doc改了,上面一句忘了改。。//XML Document系列化OutputFormat opformat = new OutputFormat( byteSend, "GB2312", true );XMLSerializer xmlSerializer = new XMLSerializer( srvCtx.getPrintWriter(), opformat );xmlSerializer.serialize( byteSend ); to drugon(personal) 我需要向平台发送XML文件,那边的技术说要这样 OutputStream os = response.getOutputStream(); os.write(bytesSend); os.flush();才能返回XML文件,所以有此一问。贻笑大方咯。to 耐心的 wingtrace(暮寒.烟灰.风化物.天佑我的母亲) 这样就行了吧long nStart; //记录已经下载的字节数File tempFile=new File(“donwzip.tmp”); //创建临时文件 FileOutputStream file=new FileOutputStream(tempFile); //创建文件输出流 ObjectOutputStream serialize=new ObjectOutputStream(file); //创建文件序列化流 serialize.writeObject(nStart);//序列化 serialize.flush();//刷新序列化流 file.close();//关闭文件输出流 serialize.close(); to wingtrace(暮寒.烟灰.风化物.天佑我的母亲) 我这里只有一个XML的Document对象doc(上面的byteSend)srvCtx.getPrintWriter()是个OutputStream吧?我该怎么做呢? 请问,这样序列化可以吗?FileOutputStream file = new FileOutputStream (new File ("c:\\a.xml")); ObjectOutputStream serialize = new ObjectOutputStream (file); serialize.writeObject (serialize); //序列化 serialize.flush (); file.close (); serialize.close ();FileOutputStream 也有了,怎么发送出去也是个问题哟 关于那几个类和接口的具体用法,请参考Xerces附带的文档,如果没有,请去http://xml.apache.org 下载。 在此感谢!!!!! wingtrace(暮寒.烟灰.风化物.天佑我的母亲) 今天有空,结贴 写android手机塔防游戏的话要用到游戏引擎吗 智力题,散分!!!分不多,重在参与! 关于JDBC中Connection的问题。。 WEBWORK 标签问题 求阶级的算法,参考参考 帮忙看看哪出错了? java存储过程! 提示错误:Exception:java.lang.NoClassDefFoundError:com/borland/jbcl/layout/XYLayout 如何解决 求uml(rose)例子。 上了一个网后注册表不能修改怎样解决? 在当前目录下创建一个名为:abc的文件夹应怎样做? 怎样把文本文件中的中文词组(每个词组之间有空格做为分割符)写入mysql数据库的表中
OutputFormat opformat = new OutputFormat( doc, "GB2312", true );
XMLSerializer xmlSerializer = new XMLSerializer( srvCtx.getPrintWriter(), opformat );
xmlSerializer.serialize( byteSend );
有些没理解的是:
1,我有个XML的Document对象doc,系列化我该放在那里算是系列化完成。
2,PrintWriter回写的方法?能给些实例代码最好了。这里面的使用我不是太清楚。
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;import org.apache.xml.serialize.OutputFormat;
import org.apache.xml.serialize.XMLSerializer;import org.w3c.dom.Document;
import org.w3c.dom.Element;其中OutputFormat和XMLSerializer是由Xerces提供的,古董的Crimson也提供了一个XmlDocument类,也可以完成类似的功能,只是和Xerces不兼容,不建议你使用。其它的接口来自JAXP,不同的解析器会对它们有不同的实现,这是需要注意的问题。
OutputFormat opformat = new OutputFormat( byteSend, "GB2312", true );
XMLSerializer xmlSerializer = new XMLSerializer( srvCtx.getPrintWriter(), opformat );
xmlSerializer.serialize( byteSend );
OutputFormat opformat = new OutputFormat( byteSend, "GB2312", true );
XMLSerializer xmlSerializer = new XMLSerializer( srvCtx.getPrintWriter(), opformat );
xmlSerializer.serialize( byteSend );
我需要向平台发送XML文件,那边的技术说要这样
OutputStream os = response.getOutputStream();
os.write(bytesSend);
os.flush();
才能返回XML文件,所以有此一问。贻笑大方咯。to 耐心的 wingtrace(暮寒.烟灰.风化物.天佑我的母亲) 这样就行了吧long nStart;
//记录已经下载的字节数
File tempFile=new File(“donwzip.tmp”);
//创建临时文件
FileOutputStream file=new FileOutputStream(tempFile);
//创建文件输出流
ObjectOutputStream serialize=new ObjectOutputStream(file);
//创建文件序列化流
serialize.writeObject(nStart);//序列化
serialize.flush();
//刷新序列化流
file.close();
//关闭文件输出流
serialize.close();
FileOutputStream file = new FileOutputStream (new File ("c:\\a.xml"));
ObjectOutputStream serialize = new ObjectOutputStream (file);
serialize.writeObject (serialize); //序列化
serialize.flush ();
file.close ();
serialize.close ();
FileOutputStream 也有了,怎么发送出去也是个问题哟
http://xml.apache.org 下载。
今天有空,结贴