/*

字节输出流  OutputStrema:
     * OutputStream抽象类
     * write(int b); 将指定的字节写入此流中
     * write(byte[] b); 将指定的数组  输入此流中
     * write(byte[] b , int a , int c);  将指定的数组输入此流中 从a索引开始  获取c 个
     * close(); 将此流关闭  并释放资源
     * flush(); 刷新缓冲区  并将文件写入
     * */

字节输出流的子类  FileOutputStream:

/*
 * FileOutputStream
 * 1.创建FileOutStream 的对象
 *   需要向构造方法传递文件的路径
 *   FileOutputStream ss = new FileoutputStream("d:a.txt");
 *   如果路径中的文件 不存在 会自动创建  如果存在会直接覆盖
 *   ss.write(66);  //注意他会转换成字节 然后输出
 *   ss.close();
 *   
 * */

FileOutStream  fls = new FileOutStream("c:/gubin.txt");

String fi = "姚晓曦";

byte[] bb = fi.getbytes();

fls.write(bb);

或者

String ss = "古斌啦啦啦";

file.write(ss.getbytes());

如下图演示:

输出的续写功能 与换行符:

/*
     * 输出的续写功能
     * FileOutputStream 中的参数 填写true
     * stream.write("gubin666\r\n".getBytes());
     * 这个里面加上换行符  \r\n  或者\br
     * */
    public static void main(String[] args) throws Exception {
        System.out.println("请输入你要输入的位置");
        Scanner scanner = new Scanner(System.in);
        String lujing = scanner.next();
        FileOutputStream stream = new FileOutputStream(lujing,true);
        stream.write("咕咕咕111\r\n".getBytes());
        stream.write("咕咕咕222".getBytes());
    }

=======================================================================

FileInputStream 读取文件  字节流的方式:

/*

  Fls.read();这个读取的是一字节 返回结果是int

  FileInputStream 读取字节,

  FileInputStream fis = new FileInputStream("F:yxx.txt");  //这个参数填写要读取的文件的路径

  fis.read();这个方法的返回值是int 返回一个字节  会自动转换成char类型  比如 你写a 控制台就会输出  97

  int len = 0; 定义一个初始变量 用它接收 fis.read()返回的结果

  while(  ( len = fis.read())!=-1){      //因为当fis.read()执行就 读取下一个  如果没有的话 会返回-1   用这个当做结束条件

   print(len);

 }

  fis.close();  //记得关闭

*/

这个字节输入流只能读取字符不可读取汉字

//向系统盘创建 一个文件
        FileOutputStream fos = new FileOutputStream("F:yxx.txt");
        String in = "1234faefaeffa56";
        fos.write(in.getBytes());
        
        //读取这个文件
          //注意不可以读字符串
        FileInputStream fis = new FileInputStream("F:yxx.txt");
        int len = 0; //这个变量用于保存fis.read()返回的结果
        while((len = fis.read())!= -1){
            System.out.print((char)len);
        }
        
        
    }

FileInputStream 读取数据:使用字节数组读取:

FileInputStream fis = new FileInputStream("F:yxx.txt");
        int len = 0; //这个变量用于保存fis.read()返回的结果
        
        byte[] by = new byte [1024];  //定义一个字节数组
        while((len  = fis.read(by))!= -1){ //使用fis.read(数组);这个方法 存入数据
            System.out.println(new String(by,0,len));  //调用String 类的构造方法 读取by数组 从0索引开始 读取len个
        }
        fis.close();
        fos.close();

java中-的流-与操作的更多相关文章

  1. java中IO流的操作

    读取转换流--读取键盘录入中键盘录入一行数据并打印其大写,发现就是读一行数据的原理.也就是readLine方法.能不能直接使用readLine方法来完成键盘录入一行数据的读取呢?readLine方法是 ...

  2. java中有关流操作的类和接口

    一.java操作l流有关的类和接口 1.File 文件类 2.RandomAccessFile 随机存储文件类 3.InputStream 字节输入流 4.OutputStream 字节输出流 5.R ...

  3. 理解Java中字符流与字节流的区别

    1. 什么是流 Java中的流是对字节序列的抽象,我们可以想象有一个水管,只不过现在流动在水管中的不再是水,而是字节序列.和水流一样,Java中的流也具有一个“流动的方向”,通常可以从中读入一个字节序 ...

  4. Java中IO流的总结

    有关Java中IO流总结图 流分类 按方向分 输入流 输出流 按单位分 字节流 字符流 按功能分 节点流 处理流(过滤流) 其他 所有的流继承与这四类流:InputSteam.OutputStream ...

  5. 理解Java中字符流与字节流

    1. 什么是流 Java中的流是对字节序列的抽象,我们可以想象有一个水管,只不过现在流动在水管中的不再是水,而是字节序列.和水流一样,Java中的流也具有一个"流动的方向",通常可 ...

  6. 理解Java中字符流与字节流的区别(转)

    1. 什么是流 Java中的流是对字节序列的抽象,我们可以想象有一个水管,只不过现在流动在水管中的不再是水,而是字节序列.和水流一样,Java中的流也具有一个“流动的方向”,通常可以从中读入一个字节序 ...

  7. JAVA中的集合容器操作类

    目录 JAVA中的集合容器操作类 List集合 ArrayList的操作方法说明 LinkedList Stack Set Map Queue 总结 JAVA中的集合容器操作类 Java容器类库总共分 ...

  8. Java中对象流使用的一个注意事项

    再写jsp的实验作业的时候,需要用到java中对象流,但是碰到了之前没有遇到过的情况,改bug改到崩溃!!记录下来供大家分享 如果要用对象流去读取一个文件,一定要先判断这个文件的内容是否为空,如果为空 ...

  9. java 中 IO 流分为几种?(未完成)

    java 中 IO 流分为几种?(未完成)

随机推荐

  1. C++ 获取特定进程的CPU使用率<转>

    C++ 获取特定进程的CPU使用率 近来发现笔记本在关闭屏幕后风扇转得特别快,打开屏幕后看任务管理器,风扇马上减速,也没有发现大量占用CPU的进程.于是想写一个小程序在后台记录每个进程的CPU使用情况 ...

  2. java String标准格式转换Date(yyyy-MM-dd HH:mm:ss)

    SimpleDateFormat sdf=new SimpleDateFormat("yyy年MM月dd日hh点mm分"); Date date=new Date(); Strin ...

  3. netbeans php环境搭建

    jdk必须: sudo apt-get install openjdk-7-jdk

  4. zookeeper 分布式计数器

    分布式计数器的思路是:指定一个Zookeeper数据节点作为计数器,多个应用实例在分布式锁的控制下,通过更新该数据节点的内容来实现计数功能. Curator中封装了实现,例如 DistributedA ...

  5. 【转】TCP、UDP数据包大小的限制

    来自:https://blog.csdn.net/caoshangpa/article/details/51530685 1.概述 首先要看TCP/IP协议,涉及到四层:链路层,网络层,传输层,应用层 ...

  6. tar使用

    [tar使用] 1..tar.gz文件 压缩:tar -czvf dstFileName.tar.gz a.txt b.txt …… 解压:tar -xzvf fileName.tar.gz 2..t ...

  7. Mybatis中DAO层接口没有写实现类,Mapper中的方法和DAO接口方法是怎么绑定到一起的

    参考mybatis入门基础(二)----原始dao的开发和mapper代理开发 其实也就是通过接口名与mapper的id绑定在一起,通过SQL去写实现类,返回数据.

  8. radiobutton 选中的项不能去掉选择的问题

    代码如下: RadioButton rbtn = new RadioButton(getApplicationContext()); rbtn.setText(String.valueOf(item. ...

  9. Lamda表达式,map和集合操作

    1.Lamda表达式,map快速获取对象的某一个属性生成集合 List<String> elementSlugs = elementInstanceBOList.stream().map( ...

  10. cin和gitchar的区别

    cin是iostream(输入输出类) 类下的istream(输入类)类的对象,作用是顺序输入字符串.cin.get()是cin的方法.cin.get()是C++面向对象的操作,getchar()是C ...