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

(1)FIleInputSrtream(String filePath);

该构造方法根据指定的文件名称和路径,创建FileInputStream类的实例对象。

语法:

new FileInputStream(filePath);

filePath:文件的绝对或相对路径。

(2)FileInputStream(File file);

该构造方法使用Flie类型的文件对象创建FileInputStream类的实例对象。

语法:

new FileInputStream(file);

file:File文件类型的实例对象。

例:在C盘存在“Example2.txt”文件,此文件的内容为“This is my book!”。创建一个File类的对象,然后创建文件字节输入流对象fis,并且从输入流中读取文件“Example2.txt”的信息。

import java.io.*;
public static void main(String[] args){
File f=new File ("c:\\","Example2.txt");
try{
byte[] bytes=new byte[512];
FileInputStream fis =new FileInputStream(f);//创建文件文件字节输入流
int rs=0;
System.out.println("The content of Example is :");
while ((rs=fis.read(bytes,0,512))>0){
//再循环中读取输入流的数据
String s=new String (bytes,0,rs);
System.out.println(s);
}
fis.close();
}catch(IOException e){
e.printStackTrace();
}
}
}

结果:

FileOutputStream类是OutputStream类的子类。它实现了文件的写入,能够以字节形式写入文件中,该类的所有方法都是从OutputStream类继承并重写的。创建文件字节输出流常用的构造方法有两种。

(1)FileOutputStream(String filePath)。

该构造方法根据指定的文件名称和路径,创建关联该文件的FileOutputStream类实例对象。

语法:

new FileOutputStream(filePath);

filePath:文件的绝对或相对路径。

(2)FileOutputStream(File file)。

该构造方法使用File类型的文件对象,创建与该文件关联的FileOutputStream类的实例对象。

语法:

new FileOutputStream(file);

file:File文件类型的实例对象。在file后面,加true会对原有内容进行追加,不加true会将原有内容覆盖。

例:

传建一个File类的对象,首先潘墩此配置文件是否存在,如果不存在,则调用createNew File方法创建一个文件,然后从键盘输入字符存入数组里,创建文件输出流,把数组里的字符写入到文件中,最终结果保存的“Example3.txr”文件。

import java.io.*;
public class Example3{
public static void main(String[] args){
int b;
File file =new File ("C:\\","Example3.txxt");
byte[] bytes=new byte[512];
System.out.println("请输入你想存入文本的内容");
try{
if (!file.exists())
file.createNewFile();
//把从键盘输入的字符存入bytes里
b=System.out.read(bytes);
//创建文件输出流
FileOutputStream fos=new FileOutputStream(file,true);
fos.write(bytes,0,b); //把bytes写入到指定文件中
fos.close();
}catch(IOException e){
e.printStackTrace();
}
}
}

结果:

FileInputStream类与FileOutputStream类的更多相关文章

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

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

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

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

  3. FileInputStream与FileOutputStream类

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

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

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

  5. java-io-FileInputStream与FileOutputStream类

    本文转载这里FileInputStream和FileOutputStream类需要注意的问题:  1.FileInputStream和FileOutputStream类分别用来创建磁盘文件的输入流和输 ...

  6. FileIntputStream / FileOutputStream 类

    FileInputStream类(重点)     (1)基本概念 java.io.FileInputStream类用于读取诸如图像之类的原始字节流.   (2)常用的方法 FileInputStrea ...

  7. FileInputStream 类与 FileReader 类的区别

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

  8. 一切皆为字节和字节输出流_OutputStream类&FileOutputStream类介绍

    一切皆为字节 一切文件数据(文本.图片.视频等)在存储时,都是以二进制数字的形式保存,都一个一个的字节,那么传输时一样如此.所以,字节流可以传输任意文件数据.在操作流的时候,我们要时刻明确,无论使用什 ...

  9. java中的 FileWriter类 和 FileReader类的一些基本用法

    1,FileWriter类(字符输出流类) |--用来写入字符文件的便捷类.此类的构造方法假定默认字符编码和默认字节缓冲区大小都是可接受的.要自己指定这些值,可以先在 FileOutputStream ...

随机推荐

  1. 【转】XP系统远程桌面连接2012R2提示:远程计算机需要网络级别身份验证,而您的计算机不支持该验证

    一.背景 因对方客户的服务器是内网的,需要操作更新服务器的数据库表信息,因此远程对方客户办公司的电脑远程服务器:但是在远程桌面连接出现问题. 二.错误问题 错误问题:“远程计算机需要网络级别身份验证, ...

  2. php打印

    function preview() { bdhtml = window.document.body.innerHTML; sprnstr = "<!--startprint--> ...

  3. C++ Leetcode Median of Two Sorted Arrays

    坚持每天刷一道题的小可爱还没有疯,依旧很可爱! 题目:There are two sorted arrays nums1 and nums2 of size m and n respectively. ...

  4. oracle 常用字符串函数

    select  initcap('guodongdong') from dual;                                  /返回字符串并将字符串的第一个字母变为大写;  s ...

  5. nodejs利用sequelize-auto 根据数据库的table 生成model

    1.打开cmd命令窗口,安装sequelize-auto npm install -g sequelize-auto 在使用sequelize-auto之前需要安装全局的mysql(举例mysql) ...

  6. Linux Shell获取系统资源使用百分比(CentOS)

    CPU使用率: top -b -n | | 内存使用率: free -m | grep '^-' | awk '{print $3/($3+$4)*100"%"}' IO使用率(F ...

  7. Windows与Linux的回车换行转换

    最初"\r"(return)表示“回车”即回到行首,“\n”(next)表示“换行”即定位到下一行:UNIX和Linux使用“\n”换行,而Windows用“\r\n”(不是\n\ ...

  8. S3cmd命令行管理对象存储

    我的使用步骤 cd /usr/    目录 git clone https://github.com/jdcloud-cmw/s3cmd.git   下载文件 ln -s /usr/s3cmd/s3c ...

  9. vue中alert toast confirm loading 公用

    import Vue from 'vue' import { ToastPlugin, AlertPlugin, ConfirmPlugin, LoadingPlugin } from 'vux' / ...

  10. UVa 3602 - DNA Consensus String 水题 难度: 0

    题目 https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&page=show_pr ...