案例1:

演示FileInputStream类的使用(用FileInputStream的对象把文件读入到内存)

首先要在E盘新建一个文本文件,命名为test.txt,输入若干字符

 public class Demo_2 {

     public static void main(String[] args) {
File f=new File("e:\\test.txt"); //得到一个文件对象f,指向e:\\test.txt
FileInputStream fis=null; try {
fis=new FileInputStream(f); //因为File没有读写的能力,所以需要使用FileInputStream byte []bytes=new byte[1024]; //定义一个字节数组,相当于缓存
int n=0; //得到实际读取到的字节数 while((n=fis.read(bytes))!=-1){ //循环读取
String s=new String(bytes,0,n); //把字节转成String(只转0到n位)
System.out.println(s);
} } catch (Exception e) {
e.printStackTrace();
}finally{ //关闭文件流必须放在这里
try {
fis.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}

运行程序,控制台输出test.txt中输入的字符。

案例2:

演示FileOutputStream的使用(把输入的字符串保存到文件中)

 public class Demo_3 {

     public static void main(String[] args) {

         File f=new File("e:\\ss.txt");
FileOutputStream fos=null; //字节输出流 try {
fos=new FileOutputStream(f); String s="你好,疯子!\r\n"; //\r\n为了实现换行保存
String s2="24个比利"; fos.write(s.getBytes());
fos.write(s2.getBytes());
} catch (Exception e) {
e.printStackTrace();
}finally{
try {
fos.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}

打开E盘名为ss.txt的文本文档,存在输入的字符。

案例3:图片拷贝

首先在E盘准备一张图片,命名为a.jpg

 public class Demo_4 {

     public static void main(String[] args) {
//思路 先把图片读入到内存,再写入到某个文件
//因为图片是二进制文件,只能用字节流完成 FileInputStream fis=null; //输入流 FileOutputStream fos=null; //输出流
try {
fis=new FileInputStream("e:\\a.jpg");
fos=new FileOutputStream("d:\\a.jpg"); byte []bytes=new byte[1024];
int n=0; //记录实际读取到的字节数
while((n=fis.read(bytes))!=-1){ //read函数返回读入缓冲区的字节总数
fos.write(bytes); //输出到指定文件
}
} catch (Exception e) {
e.printStackTrace();
}finally{
try {
fis.close();
fos.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
}

打开D盘,点击a.jpg,图片正常显示即运行成功。

Java文件(io)编程——文件字节流的使用的更多相关文章

  1. Java文件(io)编程——文件字符流的使用

    案例1: 读取一个文件并写入到另一个文件中,char[] 来中转. 首先要在E盘下创建一个文本文档,命名为test.txt,输入一些字符串. public class Demo_5 { public ...

  2. 《嵌入式linux应用程序开发标准教程》笔记——6.文件IO编程

    前段时间看APUE,确实比较详细,不过过于详细了,当成工具书倒是比较合适,还是读一读这种培训机构的书籍,进度会比较快,遇到问题时再回去翻翻APUE,这样的效率可能更高一些. <嵌入式linux应 ...

  3. 2.Linux文件IO编程

    2.1Linux文件IO概述 2.1.0POSIX规范 POSIX:(Portable Operating System Interface)可移植操作系统接口规范. 由IEEE制定,是为了提高UNI ...

  4. 文件IO——将文件dfs的文件内容第三个字节之后的内容复制到文件dfd中

    /* 使用文件IO将文件fds中的内容复制到文件fdd中去 1.创建两个文件描述符 2.使用open()方法分别以只读只写方式将文件描述符符文件连接 3.将读位置后移三位 4.将fds内容存储到缓冲区 ...

  5. Java 之文件IO编程 之写入

    package com.sun; /* * 操作对文件IO的写 * 2014-08-10 */ import java.io.*; public class File_Write { public s ...

  6. Java 之文件IO编程 之读取

    package com.sun; /* * 这里是对文件IO流读取的操作 * 2014-08-10 */ import java.io.*; public class File_test { publ ...

  7. java中io对文件操作的简单介绍

    11.3 I/O类使用 由于在IO操作中,需要使用的数据源有很多,作为一个IO技术的初学者,从读写文件开始学习IO技术是一个比较好的选择.因为文件是一种常见的数据源,而且读写文件也是程序员进行IO编程 ...

  8. Python之IO编程——文件读写、StringIO/BytesIO、操作文件和目录、序列化

    IO编程 IO在计算机中指Input/Output,也就是输入和输出.由于程序和运行时数据是在内存中驻留,由CPU这个超快的计算核心来执行,涉及到数据交换的地方,通常是磁盘.网络等,就需要IO接口.从 ...

  9. java中IO写文件工具类

    以下是一些依据经常使用java类进行组装的对文件进行操作的类,平时,我更喜欢使用Jodd.io中提供的一些对文件的操作类,里面的方法写的简单易懂. 当中jodd中提供的JavaUtil类中提供的方法足 ...

随机推荐

  1. C# 正则表达式

    C# 正则表达式 正则表达式 是一种匹配输入文本的模式..Net 框架提供了允许这种匹配的正则表达式引擎.模式由一个或多个字符.运算符和结构组成. 定义正则表达式 下面列出了用于定义正则表达式的各种类 ...

  2. 像素点的Hessian矩阵

    最近开始学习图像处理相关知识,碰到对像素点求黑塞矩阵查了资料才搞懂. 给定一个图像f(x,y)上的一点(x,y).其黑塞矩阵如下: 因为导数的公式是f'(x)=(f(x+dx)-f(x))/dx在数字 ...

  3. dfs___刷题记录

    poj 1564 给出一个s,n个数,输出所有的能够得到s的方案 #include<cstdio> #include<cstring> #include<iostream ...

  4. Spring Boot 20170913

    SpringBoot 是做微服务的,比如只用来发邮件,只用来上载文件等等.优点是开发极其简单,约定大于俗成,缺点是不适合小型项目.通常用来分解大型项目,做成多个微服务. 参考: http://www. ...

  5. mysql中redo和binlog的区别

    影响MySQL中redo的配置参数: innodb_log_file_size:指定每个redo日志大小,默认值48MB innodb_log_files_in_group:指定日志文件组中redo日 ...

  6. 记录——本地minikube安装ubuntu镜像总是报 Back-off restarting failed container问题 -已解决(更新)

    1.环境介绍 使用本机系统:macX minikube镜像:安装的阿里云提供的镜像(否则总是提示访问google的api,不FQ无法成功) 虚拟机情况:使用Virtual box 的虚拟机环境 min ...

  7. 基础——(5)D Flip-Flop(D触发器)

    之前搞了一个 D-Latch,看一下下图是怎么变化的 In D-latch anytime its enabled the input D is going to be output at Q 使用c ...

  8. C/C++中的段错误(Segmentation fault)[转]

    Segment fault 之所以能够流行于世,是与Glibc库中基本所有的函数都默认型参指针为非空有着密切关系的. 来自:http://oss.lzu.edu.cn/blog/article.php ...

  9. Golang-and-package-version-managment

    参考文章 学习Golang之后对golang中的版本管理,包管理等机制一直没有很好的琢磨,偶然想起还是觉得很有必要进行归纳,包管理使用起来简单,无非就是install,uninstall,list等, ...

  10. JS DOM 实例(5大常用实例)

    第1个实例:循环单击变色 <html lang="en"> <head> <meta charset="UTF-8"> &l ...