zoukankan      html  css  js  c++  java
  • 字节流、字符流

    字节流、字符流

    1、字节流

    输入流 IntputStream(通过子类实例化)

    把文件的内容读取出来,并显示在console在。

     

    package com.erquan.stream;

     

    import java.io.File;

    import java.io.FileInputStream;

    import java.io.IOException;

     

    public class InputStream {

     

     

    public static void main(String[] args) throws IOException {

    File file new File("c:" File.separator "file.txt");

    FileInputStream in new FileInputStream(file);

    //静态分配数组

    // byte buffer[] new byte[1024];

    // int len in.read(buffer);  //指定文件的内容读取到流中,返回数组的长度

    //动态fen配数组的大小

    byte buffer[] new byte[(intfile.length()];

    for (int 0; buffer.lengthi++) {

    buffer[i] (bytein.read();  //一个个读入

    }

    //new String(buffer)不能去除多余的空格

        //System.out.println(new String(buffer, 0, len));  //转成字符输出

    System.out.println(new String(buffer));

    in.close();  //一定要记得关闭

     

    }

     

     

    输出流 OutputStream(通过子类实例化)

    把程序里要保存的东西写入到指定的文件中

     

    package com.erquan.stream;

     

    import java.io.File;

    import java.io.FileOutputStream;

    import java.io.IOException;

     

    public class OutputStream {

     

     

    public static void main(String[] args) throws IOException {

    File file new File("c:" File.separator "file.txt");

    if (!file.exists()) {

    //System.out.println("文件不存在");

    try {

    file.createNewFile();

    catch (IOException e) {

    e.printStackTrace();

    }

    //新建字节流

    //FileOutputStream out new FileOutputStream(file);

    //在现有的文件尾部追加写入,不会覆盖原有的内容

    FileOutputStream out new FileOutputStream(file, true);  

    String context "hello world!!!!  " //要写入的信息    表示换行

    byte buffer[] context.getBytes();  //内容存入数组

    //这两种方法都会覆盖前一次的内容 FileOutputStream(file, true) 不会

    //out.write(buffer);  //向文件写入数据方法   一次全部写入

    //写入的方式    个个字符写入

    // for (int 0; buffer.length; i++) {

    // out.write(buffer[i]);

    // }

    out.close();  //关闭流

    else {

    System.out.println("文件存在!!");

    }

    }

    }

    2、字符流

    输入流 Writer

    把程序里要保存的东西写入到指定的文件中

     

     

     

    package com.erquan.charstream;

     

    import java.io.File;

    import java.io.FileWriter;

    import java.io.IOException;

     

    public class WriterStream {

     

     

    public static void main(String[] args) {

    //加载文件

    File file new File("c:" File.separator "file.txt");

    //在现有的文件尾部追加写入,不会覆盖原有的内容

    try {

    FileWriter fileWrite new FileWriter(file, true);

    //char buffer[] context.getBytes();  //内容存入数组

    String context "hello world!!!!  " //要写入的信息    表示换行

    fileWrite.write(context);  //向文件写入数据方法 

    System.out.println("写入文件成功!!");

    fileWrite.close();

    catch (IOException e) {

    e.printStackTrace();

     

    }

    }

     

     

    输出流 Reader 

    把文件的内容读取出来,并显示在console在。

     

    package com.erquan.charstream;

     

    import java.io.File;

    import java.io.FileReader;

    import java.io.IOException;

     

    public class ReaderStream {

     

     

    public static void main(String[] args) throws IOException {

    File file new File("c:" File.separator "file.txt");

    FileReader fileReader new FileReader(file);

    char buffer[] new char[1024];

    int len fileReader.read(buffer);

    //转成字符串后输出

    System.out.println(new String(buffer, 0, len));

    }

    }

     


    版权声明:本文为博主原创文章,未经博主允许不得转载。

  • 相关阅读:
    猜数字游戏,猜三次都不对,则结束游戏,猜一次就成功,结束游戏
    用return关键字实现1——100累加求和,返回总和并接收输出
    用return关键字实现求和操作
    return关键字的作用和接受实验
    数组各元素随机赋值、求和、求平均值、求最大值的各类测试(一维数组)
    日期下拉选择
    22--
    css 17课--
    css盒模型
    css学习
  • 原文地址:https://www.cnblogs.com/ubuntuvim/p/4796571.html
Copyright © 2011-2022 走看看