IO流笔记第一发

来源:互联网 发布:ubuntu root无声音 编辑:程序博客网 时间:2024/05/21 07:59
之前学过的io因为忘得差不多了,今天自己又重新学了下,顺便记下笔记。在io中,自己要站在程序的角度来看数据是读进来还是写出去。因为io的filein和fileout都是抽象的,所以我们要用它的子类来读写。今天先用的是FileInputStream和FileOutputStream这两个。要注意这两个每次都要抛异常的,而且我们写出去的文件用text记事本开读的是char类型。如同我注释了的代码所示,在e:abc文件夹中有一个hello的txt文档 他读出来是abc012,这里不要觉得奇怪这是底层。知道就好了。后面用FileInputStreamnew出来的in去读这个文件,在api中我们可以看到in.read()读出来的是一个长度,所以我们借用一个length来做for循环,输出显示。至于空格和换行这些细节的问题,我留在下次说。
package cn.hncu;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;public class MyFileInOutDemo {public static void main(String[] args) {//byte[] b={97,98,99,48,49,50};//try {//FileOutputStream out=new FileOutputStream("e:/abc/hello.txt");//try {//out.write(b);//} catch (IOException e) {//e.printStackTrace();//}//} catch (FileNotFoundException e) {//e.printStackTrace();//}byte[] buf=new byte[512];try {FileInputStream in=new FileInputStream("e:/abc/hello.txt");try {int length=in.read(buf);for (int i = 0; i < length; i++) {System.out.print((char)buf[i]);}} catch (IOException e) {e.printStackTrace();}} catch (FileNotFoundException e) {e.printStackTrace();}}}

1 0