| 
 
| import java.io.*; 
 public class DatastreamDemo {
 
 /**
 *
 * DataInputStream和DataoutputStream
 * 可以用于基本数据类型的数据流对象。
 *
 * 记住了,操作基本数据类型的流对象就用这个。
 * @param args
 * @throws IOException
 */
 public static void main(String[] args) throws IOException {
 // TODO 自动生成的方法存根
 
 //writeData();
 //readData();
 //将字符串写入基础输出流
 writeUTFDemo();
 //通过字节流的方法输出
 //OutputStreamWriter osw = new OutputStreamWriter(new FileOutputStream("gbk.txt"),"gbk");
 OutputStreamWriter osw = new OutputStreamWriter(new FileOutputStream("utf.txt"),"utf-8");
 osw.write("你好");
 osw.close();
 }
 
 public static void writeData() throws IOException{
 DataOutputStream dos = new DataOutputStream(new FileOutputStream("dos.txt"));
 //在dox.txt的文本中出现的是一些乱码,因为文本是操作字符的,她会根据这些字节去查GBK中的表,把表中对应的
 //字符显示出来。
 dos.write(220);
 dos.writeBoolean(true);
 dos.writeDouble(445.21);
 dos.close();
 }
 public static void readData() throws IOException{
 DataInputStream dis = new DataInputStream(new FileInputStream("dos.txt"));
 int num = dis.readInt();
 boolean bl = dis.readBoolean();
 double d = dis.readDouble();
 System.out.print("num="+num+"::"+"bl"+bl+"::"+"db"+d);
 dis.close();
 }
 public static void writeUTFDemo() throws IOException{
 DataOutputStream dos = new DataOutputStream(new FileOutputStream("utfdata.txt"));
 //如果是通过writeUTF写入的数据,那么也只能通过readUTF读出来
 dos.writeUTF("你好");
 dos.close();
 }
 }
 
 | 
 |