开始学习java3 输入输出流
2015-02-12 16:32
323 查看
inputStrem outPutStem 结尾的流类 一次检查1个字节。
read wridt 结尾的流类 一次检查2个字节 即一个字符。
流在输入输出结束之后 利用close() 的方法结束流的传输。
System.exit(-1)退出程序。
FileInputStream 与 FileOutpubStrem 的用法,利用每次读取一个字节然后将字节写入文件中,结束之后close完成复制过程。
FileReader FileWriter 的用法,类似,不过每次读取2个字节,可以完成中文的输出,不过利用自定义的txt要完成utf-8的编码格式才可以正确的显示。
这些所谓的流类可以理解为一条管道,链接到指定文件的管道,然后利用这个管道向外或者向内传输数据。
如果直接是程序与文件一条管道直接连接,称之为字节流。如果在管道上在套上其他的过滤管道,这些过滤管道称为处理流。
BufferedInputSteam mark(标记某个节点,以后从这个节点开始) reset(重新从标记的节点开始)
Buffered的相应的处理流的构造函数的参数依托于对应的inputStrem,outStream,reader,writer的相应的流类。
然后Buffered就有相应多的方法来操作这些流数据。
BufferedReader newLine() 写入时候的换行 readLine() 读的时候的整读一行字符。
InputStreamReader outPutStreamWriter 处理流的类用来转换,字节处理转为字符处理。
ByteArrayInputStream 字符数组流 ByteOutputStream input 和output是以程序为参考系来作为对象的
在定义ByteArrayInputStream时候,即是input到外面,即是写入的环节,这个时候当new的时候,会在内存里面申请
一块空间,然后形象的有一条管道负责输入不同的字节进去,这时如果需要输入不同的数据类型,利用dataInputStream
套在管道的外面,形成第二管道,扩大填充的范围,这样就可以根据writeLong writeBoolean等格式的写入方法满足要
求。
接着要从那块内存里面读取数据,即要弄另外一条输出管道,这里利用byteArrayOutputStream(.toByteArray)之前的
节点流数据读取byte数组进入到这里,才知道读出的内容范围。然后再需要再套个管道 dataOutputStream读取各式的
数据类型,这里根据我们之前填充的顺序,先写先读,通过不同的read方法。
flush 清除小桶里面缓存的东西
print 与 println 的区别 后者是输出之后换行 不会抛出异常
printStream 输入流 将System.out.print() 转移输出的目的地 利用 Syste.setOut(printStream类型);
再利用两条管道的套用,FileoutputStream将sysetm.out.print()的print东西输出到我们创的文件中。
printStream 输入流 将System.out.print() 转移输出的目的地 利用 Syste.setOut(printStream类型);
再利用两条管道的套用,FileoutputStream将sysetm.out.print()的print东西输出到我们创的文件中。
serializable 接口 不需要重写方法 仅标明可以序列化
ObjectOutStream 结合 FileOutputStream的方法,先定义一个文件,接通第一条管道到文件那里,然后再利用
ObjectOutStream 通过 writeObject()的方法,把我们需要传输的类写进去。
调用的时候通过FileInputStream()先读到某个文件,即相当于先接通条管道,再利用ObjectInputStream利用
readObejct() 再通过类型的强转,获得我们需要的类。需要serializable可以序列化。
Num testNum = new Num();
testNum.a = 2015;
testNum.b = 2;
testNum.c = 13;
try{
FileOutputStream a = new FileOutputStream("D://20140214.txt");
ObjectOutputStream b = new ObjectOutputStream(a);
b.writeObject(testNum);
b.flush();
b.close();
FileInputStream e = new FileInputStream("D://20140214.txt");
ObjectInputStream f = new ObjectInputStream(e);
Num readNum = (Num) f.readObject();
System.out.print(readNum.a);
}catch(ClassNotFoundException er){
}
catch(FileNotFoundException er){
}
catch(IOException er){
System.out.print("123");
}
read wridt 结尾的流类 一次检查2个字节 即一个字符。
流在输入输出结束之后 利用close() 的方法结束流的传输。
System.exit(-1)退出程序。
public class Hello { public static void main(String[] args) { int b = 0; FileInputStream a = null; FileOutputStream c = null; try{ a = new FileInputStream("D://Hello.class"); c = new FileOutputStream("D://HelloEveryOne1.java"); while((b = a.read()) != -1){ c.write(b); } a.close(); c.close(); }catch(FileNotFoundException eo){ System.out.print("找不到!"); System.exit(-1); } catch(IOException eo){ System.out.print("文件读取错误"); } System.out.print("文件复制成功"); } }
FileInputStream 与 FileOutpubStrem 的用法,利用每次读取一个字节然后将字节写入文件中,结束之后close完成复制过程。
FileReader FileWriter 的用法,类似,不过每次读取2个字节,可以完成中文的输出,不过利用自定义的txt要完成utf-8的编码格式才可以正确的显示。
这些所谓的流类可以理解为一条管道,链接到指定文件的管道,然后利用这个管道向外或者向内传输数据。
如果直接是程序与文件一条管道直接连接,称之为字节流。如果在管道上在套上其他的过滤管道,这些过滤管道称为处理流。
BufferedInputSteam mark(标记某个节点,以后从这个节点开始) reset(重新从标记的节点开始)
Buffered的相应的处理流的构造函数的参数依托于对应的inputStrem,outStream,reader,writer的相应的流类。
然后Buffered就有相应多的方法来操作这些流数据。
BufferedReader newLine() 写入时候的换行 readLine() 读的时候的整读一行字符。
InputStreamReader outPutStreamWriter 处理流的类用来转换,字节处理转为字符处理。
ByteArrayInputStream 字符数组流 ByteOutputStream input 和output是以程序为参考系来作为对象的
在定义ByteArrayInputStream时候,即是input到外面,即是写入的环节,这个时候当new的时候,会在内存里面申请
一块空间,然后形象的有一条管道负责输入不同的字节进去,这时如果需要输入不同的数据类型,利用dataInputStream
套在管道的外面,形成第二管道,扩大填充的范围,这样就可以根据writeLong writeBoolean等格式的写入方法满足要
求。
接着要从那块内存里面读取数据,即要弄另外一条输出管道,这里利用byteArrayOutputStream(.toByteArray)之前的
节点流数据读取byte数组进入到这里,才知道读出的内容范围。然后再需要再套个管道 dataOutputStream读取各式的
数据类型,这里根据我们之前填充的顺序,先写先读,通过不同的read方法。
flush 清除小桶里面缓存的东西
print 与 println 的区别 后者是输出之后换行 不会抛出异常
printStream 输入流 将System.out.print() 转移输出的目的地 利用 Syste.setOut(printStream类型);
再利用两条管道的套用,FileoutputStream将sysetm.out.print()的print东西输出到我们创的文件中。
PrintStream ps = null; try{ FileOutputStream a = new FileOutputStream("D://20150213.txt"); ps = new PrintStream(a); }catch(IOException eo){ System.out.print("输入错误"); } if(ps != null){ System.setOut(ps); //将out出来的路径转化 } int ln = 0; for(byte c = 0 ; c < 50000; c++){ System.out.print(c + " "); if(ln++ >= 100){ System.out.println(); ln = 0; } } // System.setOut(null); System.out.print("输入成功");
String s = null; BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); //借助BufferedReader可以调用它的readLine()方法 利用 System.in <span style="white-space:pre"> </span> 获取面板输入的东西,它就是一个小桶暂存区。 </span> try{ FileWriter fw = new FileWriter("d://20150214.txt"); //新建一txt文档 PrintWriter log = new PrintWriter(fw); //输入方式改变,由面板输入 while((s = br.readLine()) != null){ if(s.equalsIgnoreCase("exit")) break; System.out.println(s); System.out.println("--------------------"); log.println(s); log.flush(); } log.println("===" + new Date() + "===");//打印当前的时间 log.flush(); log.close(); }catch(IOException eo){ }
printStream 输入流 将System.out.print() 转移输出的目的地 利用 Syste.setOut(printStream类型);
再利用两条管道的套用,FileoutputStream将sysetm.out.print()的print东西输出到我们创的文件中。
serializable 接口 不需要重写方法 仅标明可以序列化
ObjectOutStream 结合 FileOutputStream的方法,先定义一个文件,接通第一条管道到文件那里,然后再利用
ObjectOutStream 通过 writeObject()的方法,把我们需要传输的类写进去。
调用的时候通过FileInputStream()先读到某个文件,即相当于先接通条管道,再利用ObjectInputStream利用
readObejct() 再通过类型的强转,获得我们需要的类。需要serializable可以序列化。
Num testNum = new Num();
testNum.a = 2015;
testNum.b = 2;
testNum.c = 13;
try{
FileOutputStream a = new FileOutputStream("D://20140214.txt");
ObjectOutputStream b = new ObjectOutputStream(a);
b.writeObject(testNum);
b.flush();
b.close();
FileInputStream e = new FileInputStream("D://20140214.txt");
ObjectInputStream f = new ObjectInputStream(e);
Num readNum = (Num) f.readObject();
System.out.print(readNum.a);
}catch(ClassNotFoundException er){
}
catch(FileNotFoundException er){
}
catch(IOException er){
System.out.print("123");
}
相关文章推荐
- java之io类,输入输出流学习
- Java学习从菜鸟变大鸟之二 输入输出流(IO)
- 学习练习 java 输入输出流练习2
- Java IO流学习总结一:输入输出流
- JAVA学习笔记0007----输入输出流
- 对java zip输入输出流的学习过程
- Java学习笔记之输入输出流(一) File、文件字节流、文件字符流
- Java基础学习总结(47)——JAVA输入输出流再回忆
- Java学习从菜鸟变大鸟之二 输入输出流(IO)
- JAVA输入输出流学习心得
- 黑马程序员高级学习视频IO输入输出流 将一个指定目录下的java文件的绝对路径,存储到一个文本文件中
- 12.6 JAVA学习 输入输出流
- java中常见的输入输出流案例学习(一)
- Java IO流学习总结一:输入输出流
- 学习总结 java 输入输出流
- Java学习从菜鸟变大鸟之二 输入输出流(IO)
- Android(java)学习笔记166:Java中输入和输出流概念
- Java 输入输出流巩固学习
- Java学习笔记-《Java程序员面试宝典》-第四章基础知识-4.7输入输出流(4.7.1-4.7.3)
- Java IO流学习总结一:输入输出流