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();
}
}
|
|