1.OutputStream 和InputStream

  输入和输出:1.参照物都是java程序来惨遭

        2.Input输入,持久化上的数据----》内存

        3.Output输出,内存---》硬盘

  字节输出流:

    OutputStream:

      定义:流按照方向可以分为输入和输出流,字节流可以操作任何数据,字符流只能操作纯字符数据。

      IO流父类:OutputStream和InputStream

  IO流程序书写步骤:

       1.先导包

       2.进行异常处理

       3.释放资源

2FileOutputStream

  是OutputStream的子类

  1.1文件输出流是用于将数据写入 FileFileDescriptor 的输出流。

  1.2.创建流

public class Demo {
public static void main(String[] args) throws Exception {
/* 步骤 1创建流 子类对象 绑定数据目的
* 2 调用write() 方法
* 3 close 关闭资源
*
* */
FileOutputStream fos = new FileOutputStream("d:\\aaa.txt");
// 调用write() 方法 写一个字节
fos.write(97);
// 写字节数组
byte[] b = {65,66,67,68};
fos.write(b);
// 写字节数组的一部分
fos.write(b,1,2);
//2.3写字符串 getBytes() 字符串转字节
fos.write("hello world".getBytes());
//关闭资源
fos.close();
}
}

  文件的换行和续写,即每次刷新程序,都会在原有的基础上重新添加数据

public class Demo {
public static void main(String[] args) throws Exception {
/*
* 换行和续写
*/
File file = new File("d:\\b.txt");
FileOutputStream fos = new FileOutputStream(file,true);
fos.write("hello\r\n".getBytes());
fos.write("world\\r\n".getBytes());
//关闭流
fos.close();
}
}

3FileInputStream流

  是InputStream的子类

  2.1FileInputStream 从文件系统中的某个文件中获得输入字节。

  2.2创建流

    字符读取(读取速度慢)

public class Demo {
public static void main(String[] args){
// 1创建字节输入流的子类对象
//2 调用方法读取 read
//3 关闭资源
try {
FileInputStream fis = new FileInputStream("d:\\aaa.txt");
int len = 0;
while((len=fis.read())!=-1) {
System.out.print((char)len);
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
} }
}

    字节数组读取(读取速度快)

public class Demo {
public static void main(String[] args){
// 1创建字节输入流的子类对象
//2 调用方法读取 read
//3 关闭资源
try {
FileInputStream fis = new FileInputStream("d:\\aaa.txt");
//创建字节数组
byte[] b = new byte[1024];
int len = 0;
while((len = fis.read(b))!=-1) {
System.out.println(new String(b,0,len));
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}

java_24 FileOutputStream类和FileInputStream类的更多相关文章

  1. 字节流, FileOutputStream类,FileInputStream类,复制文件,字符流

    字节输出流OutputStream OutputStream此抽象类,是表示输出字节流的所有类的超类.操作的数据都是字节 基本方法: 子类可继承调用以上方法 FileOutputStream类 构造方 ...

  2. FileInputStream 类与 FileReader 类的区别

    FileInputStream 类与 FileReader 类的区别: 两个类的构造函数的形式和参数都是相同的,参数为 File 对象或者表示路径的 String ,它们到底有何区别呢? FileIn ...

  3. java----FileInputStream类与FileReader类的区别(转)

    FileInputStream类与FileReader类的区别:两个类的构造函数的形式和参数都是相同的,参数为File对象或者表示路径的String,它们到底有何区别呢? Readers and W ...

  4. 字节流与字符流(FileInputStream类和FileOutputStream类)

    FileInputStream类和FileOutputStream类中,第一个类的源端和第二个类的目的端都是磁盘文件,它们的构造方法允许通过文件的路径名来构造相应的流.例如: FileInputSte ...

  5. FileInputStream类与FileOutputStream类

    FileInputStream类是InputStream类的子类.他实现了文件的读取,是文件字节输入流.该类适用于比较简单的文件读取,其所有方法都是从InputStream类继承并重写的.创建文件字节 ...

  6. FileInputStream与FileOutputStream类 Reader类和Writer类 解析

    FileInputStream和FileOutputStream类分别用来创建磁盘文件的输入流和输出流对象,通过它们的构造函数来指定文件路径和文件名. 创建FileInputStream实例对象时,指 ...

  7. FileInputStream类

    FileInputStream和FileOutPutStream类都是用来操作磁盘文件的.如果用户对文件读取需求比较简单,则可以使用FileInputStream类,该类继承InputStream类 ...

  8. 字节输出流的续写和换行和字节输入流InputStream类&FileInputStream类介绍

    数据追加续写 每次程序运行,创建输出流对象,都会清空目标文件中的数据.如何保目标文件中的数据,还能继续添加新数据呢? public FileOutputStream(File file,boolean ...

  9. [转]探究java IO之FileInputStream类

    使用FileInputStream类创建的InputStream对象可以用于从文件读取内容.两个常用的构造函数如下所示: ? 1 2 FileInputStream(String filePath) ...

随机推荐

  1. What’s New In GRANDstack?

    转自:https://blog.grandstack.io/whats-new-in-grandstack-310c067fea4a There’s been a lot of activity in ...

  2. zombodb 得分以及高光

    得分以及高光在搜索引擎中有很重要的作用 得分zdb.score 使用方法 zdb.score(tid) 参考示例 SELECT zdb.score(ctid), * FROM products WHE ...

  3. C# ZipHelper C#公共类 -- ZipArchive实现压缩和解压

    从网上找来个ZipArchive来压缩和解压缩的类,供参考吧 /******************************************************************** ...

  4. Anaconda安装python(idea兼容)

    官方网站www.anaconda.com 1 Windos安装 一路下一步,注意添加环境变量 成功过后,测试一下,打开cmd命令行 2 Linux安装 下载完成后上传到linux bash Anaco ...

  5. c#读sql server数据添加到MySQL数据库

    using System;using System.Collections.Generic;using System.Text;using Console = System.Console;using ...

  6. 修改postgres密码

    转载自:https://www.cnblogs.com/kaituorensheng/p/4735191.html   1. 修改PostgreSQL数据库默认用户postgres的密码 Postgr ...

  7. js 缓存后端的数据

    var power = (function () { var cacheObj=[] ; return { get: function (key) { if (cacheObj.length === ...

  8. OS&SYS&Shuti模块

    #sys.argv   主要针对脚本可以读取参数 Shuti模块 import shutil f1=open('笔记',encoding='utf-8') f2=open('笔记2','w',enco ...

  9. 63.1拓展之纯 CSS 创作一个摇摇晃晃的 loader

    效果地址:https://scrimba.com/c/cqKv4VCR HTML code: <div class="loader"> <span>Load ...

  10. http stream

    http stream 博客分类: http://canofy.iteye.com/blog/2097876 j2EE   StringBuilder sb = new StringBuilder() ...