java基础之 IO流
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Arrays;
2.字节输出流 :
OutPutStream : 他也是所有字节输出流的超类 ,也是一个抽象的类 ,使用子类
-----FileOutputStream 文件输出流
FileOutputStream 的使用步骤:
1.找到目标文件
2.建立通道
3.写入数据
4.关闭资源
FileOutputStream的使用注意事项:
1.使用FileOutputStream写数据的时候,如果目标文件不存在,那么就会自己创建一个目标文件对象。
2.使用FileOutputStream写数据的时候,如果目标文件存在,先将里面的数据清空,在写入数据。
3.使用FileOutputStream写数据的时候,如果目标文件存在,想将数据在原有的基础上追加,这个
时候就应该使用FileOutputStream(File file, boolean append) 构造方法, append如果为true表示
可以追加数据,反之不信。
4..使用FileOutputStream写数据的时候,用write(int a)方法写数据,虽然接收的是int ,但实际上只有一个字节的数据,
操作的是低八位的二进制 ,其他的24位全部丢掉。
练习题: 将一张图片拷贝到另外一个地方。
字节输出流代码:
public class Demo2 {
/**
* @param args
* @throws IOException
*/
public static void main(String[] args) throws IOException {
// TODO Auto-generated method stub
writeData();
//writeData2();
FileInputStream inp = new FileInputStream(new File("D:\\a.txt"));
byte[] b = new byte[1024];
inp.read(b);
System.out.println(Arrays.toString(b));
}
//方式二:
public static void writeData2() throws IOException{
//1.找目标文件
File file = new File("D:\\a.txt");
//2.创建一个通道
FileOutputStream outputStream = new FileOutputStream(file,true); // 在这一步创建的文件。
//3.创键一个字节数组
String str = "hello word";
//将字符串变为字节数组
byte[] b = str.getBytes();
//4.写入数据
outputStream.write(b);
//5.关闭资源
outputStream.close();
}
//方式一
public static void writeData() throws IOException{
//1.找目标文件
File file = new File("D:\\a.txt");
//2.创建一个通道
FileOutputStream outputStream = new FileOutputStream(file);
//3.开始写入数据
/*int a = 10; // 4个字节
outputStream.write(a); //每次输出一个字节
outputStream.write('b');
outputStream.write('c');*/
// 0000-0000 0000-0000 0000-0001 1111-1111 == 511
int a = 127;
outputStream.write(a); // 255
//4.关闭资源
outputStream.close();
}
}
java基础之 IO流的更多相关文章
- java基础之IO流(二)之字符流
java基础之IO流(二)之字符流 字符流,顾名思义,它是以字符为数据处理单元的流对象,那么字符流和字节流之间的关系又是如何呢? 字符流可以理解为是字节流+字符编码集额一种封装与抽象,专门设计用来读写 ...
- java基础之IO流(一)字节流
java基础之IO流(一)之字节流 IO流体系太大,涉及到的各种流对象,我觉得很有必要总结一下. 那什么是IO流,IO代表Input.Output,而流就是原始数据源与目标媒介的数据传输的一种抽象.典 ...
- Java基础之IO流整理
Java基础之IO流 Java IO流使用装饰器设计模式,因此如果不能理清其中的关系的话很容易把各种流搞混,此文将简单的几个流进行梳理,后序遇见新的流会继续更新(本文下方还附有xmind文件链接) 抽 ...
- 【java基础】]IO流
IO流 概念: 流的概念源于unix中管道(pipe)的概念,在unix中,管道是一条不间断的字节流,用来实现程序或进程间的通信,或读写外围设备,外部文件等 一个流,一定能够会有源和去向(目的地),他 ...
- java基础44 IO流技术(输出字节流/缓冲输出字节流)和异常处理
一.输出字节流 输出字节流的体系: -------| OutputStream:所有输出字节流的基类(抽象类) ----------| FileOutputStream:向文件输出数据的输出字节流(把 ...
- java基础之io流总结一:io流概述
IO流概念: 流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象.io流是实现输入和输出的基础,可以方便的实现数据的输入和输出操作. IO流的分类: 根据处理数据类型的不同分为:字符流 ...
- 黑马程序员——JAVA基础之IO流FileReader,FileWriter
------- android培训.java培训.期待与您交流! ---------- IO(Input Output)流 IO流用来处理设备之间的数据传输 Java对数据的操作是通过流的方式 J ...
- java基础06 IO流
IO用于在设备间进行数据传输的操作. Java IO流类图结构: IO流分类 字节流: InputStream FileInputStream BufferedInputStream Output ...
- java基础之IO流及递归理解
一.IO流(简单理解是input/output流,数据流内存到磁盘或者从磁盘到内存等) 二.File类(就是操作文件和文件夹的) 1.FIleFile类构造方法 注意:通过构造方法创建的file对象是 ...
随机推荐
- Linux 下的 blog客户端
apt-cahce search metaweblog found gnome-blog blogilo try blogilo
- WPF AutoGeneratingColumn 绑定下拉框
WPF自动产生列,前台代码: <DataGrid x:Name="Dg" AutoGenerateColumns="True" CanUserAddRow ...
- 控制器view加载
出自李明杰讲课视频
- Multilingual App Toolkit v2.2 release
Multilingual App Toolkit v2.2 release Today we released Multilingual App Toolkit v2.2. This release ...
- 在Windows下读取Ext4分区
转自在Windows下读取Ext4分区 本文介绍两个能在 Windows 下读取ext4分区的软件. 第一个是 Ext2Read.它能查看 ext2/3/4 分区并从中拷贝文件和目录,支持 LVM2 ...
- 如何监控 Nginx?
什么是 Nginx? Nginx("engine-x")是一个 HTTP 和反向代理服务器,同时也是一个邮件代理服务器和通用的 TCP 代理服务器.作为一个免费开源的服务器,Ngi ...
- django作models的UPDATE时,注意有过滤外键的情况
就是如果要过滤的时候,存在外键,则需要取到原始字段的名称,不然就是ID. 原始名称以__(双下划线)引用. 如: def path2db(release_version, develop_versio ...
- QPainter类学习
详细描述: QPainter类提供了许多高度优化的函数去做大部分的GUI绘制工作.它可以画从简单的线到复杂的形状.通常情况下,QPainter的使用是在widget当中的painter事件使用.记得在 ...
- Innodb和MyISAM比较
Innodb和MyISAM比较 (1)MyISAM类型的表强调的是性能,其执行速度比InnoDB类型更快 (2)MyISAM不支持事务.外键,InnoDB支持事务和外键 (3)MyISAM使用的表级锁 ...
- android通用文件操作
最经用到android的SCCard的文件操作,因此稍作了整理,将它写成一个简单的工具类.其中,可以判断SDCard的是否可用,可用存储空间,文件的创建以及写入数据.经过测试,可以正常使用.代码如下: ...