当前位置: 技术问答>java相关
为什么向一文本文件里写字符不成功?
来源: 互联网 发布时间:2015-06-04
本文导语: import java.io.*; import javax.xml.parsers.*; import javax.xml.transform.*; import javax.xml.transform.dom.DOMSource; import javax.xml.transform.stream.StreamResult; import java.util.*; import org.w3c.dom.*; class MakeXmlPage { public MakeXmlPage() { ...
import java.io.*;
import javax.xml.parsers.*;
import javax.xml.transform.*;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
import java.util.*;
import org.w3c.dom.*;
class MakeXmlPage
{
public MakeXmlPage()
{
}
public void getPageHead(String filexmlname) throws
IOException,FileNotFoundException //参数为要写XML文件头的文件名
{
//创建一个输出流,把XML文件头输出到filexmlname所指定的文件里
DataOutputStream out = new DataOutputStream( new BufferedOutputStream(
new FileOutputStream(filexmlname)));
//输出XML文件头
out.writeChars("");
out.writeChars("");
out.writeChars("mmm");
}
}
public class mmm
{
public static void main(String[] args)throws IOException
{
MakeXmlPage a = new MakeXmlPage();
a.getPageHead("1.xml");
}
}
编译通过,但执行过后我查看1.XML文件没有改变,这是怎么回事?他们都在同一目录下.
import javax.xml.parsers.*;
import javax.xml.transform.*;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
import java.util.*;
import org.w3c.dom.*;
class MakeXmlPage
{
public MakeXmlPage()
{
}
public void getPageHead(String filexmlname) throws
IOException,FileNotFoundException //参数为要写XML文件头的文件名
{
//创建一个输出流,把XML文件头输出到filexmlname所指定的文件里
DataOutputStream out = new DataOutputStream( new BufferedOutputStream(
new FileOutputStream(filexmlname)));
//输出XML文件头
out.writeChars("");
out.writeChars("");
out.writeChars("mmm");
}
}
public class mmm
{
public static void main(String[] args)throws IOException
{
MakeXmlPage a = new MakeXmlPage();
a.getPageHead("1.xml");
}
}
编译通过,但执行过后我查看1.XML文件没有改变,这是怎么回事?他们都在同一目录下.
|
你的out close()了吗。
|
close() or flush() it muse.
|
所有out.writeChars()改为
out.writeBytes()就可以啦。writeChars是写的unicode,
而你输出时为ascii,当然会有空格了。
out.writeBytes()就可以啦。writeChars是写的unicode,
而你输出时为ascii,当然会有空格了。
|
unicode是一种宽字符集(16位)
ascii是8位的
win98(及以下)对unicode的支持有些问题,win2000是基于unicode的操作系统
在有显示中文的情况下你就会发现他们的区别了
================================================================
CSDN 论坛助手 Ver 1.0 B0402提供下载。 改进了很多,功能完备!
★ 浏览帖子速度极快![建议系统使用ie5.5以上]。 ★ 多种帖子实现界面。
★ 保存帖子到本地[html格式]★ 监视您关注帖子的回复更新。
★ 可以直接发贴、回复帖子★ 采用XML接口,可以一次性显示4页帖子,同时支持自定义每次显示帖子数量。可以浏览历史记录!
★ 支持在线检测程序升级情况,可及时获得程序更新的信息。
★★ 签名 ●
可以在您的每个帖子的后面自动加上一个自己设计的签名哟。
Http://www.ChinaOK.net/csdn/csdn.zip
Http://www.ChinaOK.net/csdn/csdn.rar
Http://www.ChinaOK.net/csdn/csdn.exe [自解压]
ascii是8位的
win98(及以下)对unicode的支持有些问题,win2000是基于unicode的操作系统
在有显示中文的情况下你就会发现他们的区别了
================================================================
CSDN 论坛助手 Ver 1.0 B0402提供下载。 改进了很多,功能完备!
★ 浏览帖子速度极快![建议系统使用ie5.5以上]。 ★ 多种帖子实现界面。
★ 保存帖子到本地[html格式]★ 监视您关注帖子的回复更新。
★ 可以直接发贴、回复帖子★ 采用XML接口,可以一次性显示4页帖子,同时支持自定义每次显示帖子数量。可以浏览历史记录!
★ 支持在线检测程序升级情况,可及时获得程序更新的信息。
★★ 签名 ●
可以在您的每个帖子的后面自动加上一个自己设计的签名哟。
Http://www.ChinaOK.net/csdn/csdn.zip
Http://www.ChinaOK.net/csdn/csdn.rar
Http://www.ChinaOK.net/csdn/csdn.exe [自解压]
|
不要writeChars()!
用println()
用println()