import java.io.*;
/**
*
* @author Administrator
* 简单的输入输出
*/
public class IOStream {
public static void main(String [] args) throws IOException {
//1.按行输入
BufferedReader br = new BufferedReader(
new FileReader("D:\\a.txt"));
String s1,s2 = new String();
while((s1 = br.readLine()) != null){
s2 += s1+"\n";
}
br.close();
//2.按行标准输入
BufferedReader stdbr = new BufferedReader(
new InputStreamReader(System.in));
System.out.println(stdbr.readLine());
//3.从内存读入
StringReader sr = new StringReader(s2);
int c;
while((c = sr.read()) != -1){
System.out.println((char)c);
}
sr.close();
//4.内存格式化读入
try{
DataInputStream dis = new DataInputStream(
new ByteArrayInputStream(s2.getBytes()));
byte b;
while(true){
System.out.println((char)dis.readByte());
}
}catch(EOFException eofe){
}
//5.输出到文件
BufferedReader br1 = new BufferedReader(
new StringReader(s2));
PrintWriter pw = new PrintWriter(new BufferedWriter(
new FileWriter("D:\\d.txt")));
int lineCount = 0;
while((s1 = br1.readLine()) != null){
pw.println(lineCount+": " + s1);
}
pw.close();
//6.格式化读写
DataOutputStream dos = new DataOutputStream(
new BufferedOutputStream(
new FileOutputStream("D:\\d.txt")));
dos.writeDouble(3.1415926);
dos.writeUTF("ni hao");
dos.writeDouble(1.3446333);
dos.writeUTF("hello , how are you!");
dos.close();
DataInputStream dis = new DataInputStream(
new BufferedInputStream(
new FileInputStream("D:\\d.txt")));
System.out.println(dis.readDouble());
System.out.println(dis.readUTF());
System.out.println(dis.readDouble());
System.out.println(dis.readUTF());
//7.随即访问文件
RandomAccessFile raf = new RandomAccessFile(
"D:\\e.txt","rw");
for(int i =0; i< 10; i++){
raf.writeDouble(i*3.14159);
}
raf.close();
raf = new RandomAccessFile("D:\\e.txt","rw");
raf.seek(40);
raf.writeDouble(123.456);
raf.close();
raf = new RandomAccessFile("D:\\e.txt","r");
for(int i=0; i<10;i++){
System.out.println(raf.readDouble());
}
raf.close();
}
}