/*

字节输出流  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. Eureka 客户端 配置Eureka 爬坑

    配置客户端 eureka.client.register-with-eureka=true eureka.client.fetch-registry=true eureka.client.servic ...

  2. 2 数据库开发--MySQL下载(windows)

    Windows:(mysql) 操作: 0.下载安装mysql www.mysql.org downloads->进入社区community community 5.7.21 下载5.6 Mic ...

  3. 图片上传jQuery插件(兼容IE8)

      图片上传jQuery插件(兼容IE8) 代码来源 :https://github.com/zilan93/uploadImg   html <!DOCTYPE html> <ht ...

  4. linux shell脚本编程笔记(四): 获取字符串长度的七种方法

    获取字符串长度的七种方法 1. \${#str} 2.awk的length 备注:1) 最好用{}来放置变量2) 也可以用length($0)来统计文件中每行的长度 3.awk的NF 备注: -F为分 ...

  5. __next__和__iter__实现迭代器协议

    ---恢复内容开始--- #_*_coding:utf-8_*_ __author__ = 'Linhaifeng' class Foo: def __init__(self,x): self.x=x ...

  6. Shadow Map 实现极其细节

    这里不介绍算法原理,只说说在实现过程中遇到的问题,以及背后的原因.开发环境:opengl 2.0  glsl 1.0. 第一个问题:产生深度纹理. 在opengl中每一次离屏渲染需要向opengl提供 ...

  7. 转载:字符串hash总结(hash是一门优雅的暴力!)

    转载自:远航休息栈 字符串Hash总结 Hash是什么意思呢?某度翻译告诉我们: hash 英[hæʃ] 美[hæʃ]n. 剁碎的食物; #号; 蔬菜肉丁;vt. 把…弄乱; 切碎; 反复推敲; 搞糟 ...

  8. JavaScript 分号使用总结

    没有应该不应该,只有你自己喜欢不喜欢.JavaScript 语法长得 C-like 不代表它本质上和 C 是一类语言,所有直觉性的 "当然应该加分号" 都是保守的.未经深入思考的草 ...

  9. [Selenium]How to click on a hidden link ,move to the drop down menu and click submenu

    <table id="_paid_19" class="GOMainTable" cellspacing="0" cellpaddin ...

  10. 20169202 2016-2017-2《Windows攻击》

    Windows攻击 实验要求:使用Metaspoit攻击MS08-067,提交正确得到远程Shell的截图,加上自己的学号水印 (1):MS08-067远程溢出漏洞描述 MS08-067漏洞的全称为& ...