字符流初步使用

InputStream

InputStream的作用是标志那些从不同数据起源产生输入的类。这些数据起源包括(每个都有一个相关的InputStream子类)。
(1) 字节数组
(2) String对象
(3) 文件
(4) “管道”,它的工作原理与现实生活中的管道类似:将一些东西一端置入,它们在另一端输出。
(5) 一个由其他种类的流组成的序列,以便我们将其统一收集合并到一个流内。
(6) 其他数据集,如Internet连接等。

读取内存

现在String s2里面已经有一个完整的文件了。因此这部分程序要用它去创建一个StringReader。然后用(StringReader的)read( )方法把字符读出来,再送到控制台上去。注意,read( )会把读出来的byte当作int,所以要想正常打印的话,你得先把它们转换成char

try {
            FileInputStream input = new FileInputStream("D://java/java/java.txt");

            int n = input.read();

            while (n > 1) {
                System.out.print((char) n);
                n = input.read();
            }
            input.close();
        } catch (FileNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

OutputStream

OutputStream是流的形式,具体可以表现为FileOutputStream的形式进行整行的写入。
可以通过“FileOutputStream”创建文件实例,之后过“OutputStreamWriter”流的形式进行存储,举例:
OutputStreamWriter pw = null;//定义一个流
pw = new OutputStreamWriter(new FileOutputStream(“D:/test.txt”),”GBK”);//确认流的输出文件和编码格式,此过程创建了“test.txt”实例
pw.write(“我是要写入到记事本文件的内容”);//将要写入文件的内容,可以多次write
pw.close();//关闭流

try {
            FileOutputStream output=new FileOutputStream("d://java/java/java.txt");
            String d="123456";
            output.write(d.getBytes());
            output.close();
        } catch (FileNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

猜你喜欢

转载自blog.csdn.net/xfscy/article/details/72636394