io流

IO流—字符流

一笑奈何 提交于 2019-12-04 23:09:52
字符流 只能读写文本文件 Reader 抽象类 字符输出流的父类 Writer 抽象类 字符输出流的父类 字符转换输出流: OutputStreamWriter(OutputStream out): 创建使用默认字符编码的 OutputStreamWriter OutputStreamWriter(OutputStream out, String charsetName) : 创建使用指定字符集的 OutputStreamWriter 案例1: public class MyTest { public static void main(String[] args) throws IOException { //输出流,所关联的文件如果不存在则自动创建 OutputStreamWriter out = new OutputStreamWriter(new FileOutputStream("a.txt")); //往文件中写入数据 out.write('你'); //一次写入一个字符 out.write('好'); out.flush(); //字符流要刷新一下 out.write('你'); //一次写入一个字符 out.write('好'); out.write('你'); //一次写入一个字符 out.write('好'); out.flush(); out.write(

关于IO流的一些总结

核能气质少年 提交于 2019-12-04 19:12:59
IO流:数据的流动   I--> intput流入   O--> output流出       java中,是jvm与硬盘之间字节的流动  流入和流出是以jvm为基准的,硬盘到jvm中就是流入,jvm到硬盘就是流出   IO流顶层有四个父类【抽象类】   字节输入流 InputStream         字节输出流  InputStream   字符输入流 Writer           字符输出流  Reader      【只能对文本操作】   实现类的构造都会关联一个文件,若是输出流的关联,若文件不存在可以不创建,会自动生成。    若是输入流的关联,若文件不存在则会报文件找不到异常   常用基本方法 writer  read  flush【用在字符输出流中用于将录入的字符从缓冲区存进所关联的文件,(字节流不用,直接存字节)】  close【调用该方法时会自动刷新】   一些实现类的功能与特点   缓冲流;Buffer******:对四个基本流【File****】的增强。  给其增加一个缓冲区。  将基本流读取/写入的字节存至缓冲区,而不用基本流进行频繁的jvm到硬盘之间的流动。将其读写效率提高   转换流:字节与字符的桥梁  编码与解码功能。  可指定编码方式      【读取windows系统中文本(默认使用的是gbk编码)时,会出现乱码(编译软件一般是utf—8)】

文件IO流

喜欢而已 提交于 2019-12-04 15:11:41
2-2 文件 IO 流 文件   持久化的保存数据 File 操作 java.io 包 File 类(包含目录和文件) 创建方法:   new File(" 文件绝对路径 ") ; 常用方法: boolean exists () 文件是否存在 boolean isFile() 是否是文件 boolean createNewFile() 创建新文件 boolean mkdir () 创建目录 boolean mkdirs () 创建多级目录 String getAbsolutePath() 获得绝对路径 boolean delete() :删除文件 int length () : 返回文件长度 String getName() 获得文件名 File 筛选 筛选目录下的文件和文件夹 File [] listFiles() 返回所有文件和目录 File [] listFile(FilenameFilter filter) 通过文件名来筛选 FilenameFilter:boolean accept(File dir,String name) 可以通过文件名来筛选, true 通过, false 过滤掉 File [] listFile (FileFilter filter) 通过文件各种属性筛选 FileFilter 接口 boolean accept(Filter pathname)

IO流

微笑、不失礼 提交于 2019-12-04 09:13:07
输入输出流,用来进行设备之间的数据传输。 是我们IO传输的数据是以文件的形式体现的,所以Java给我们提供了一个类,Flie用来描文件和目录 File(File parent, String child) 根据 parent 抽象路径名和 child 路径名字符串创建一个新 File 实例。 File(String pathname) 通过将给定路径名字符串转换为抽象路径名来创建一个新 File 实例。 File(String parent, String child) 根据 parent 路径名字符串和 child 路径名字符串创建一个新 File 实例。 File() 上面三个构造方法,用来封装一个文件或目录 路径: 绝对路径: 带有盘符号的而详细路径 相对路径: 不带有盘符号的路径,项目文件夹的根目录 creatNewFile() 创建文件 返回值的的意思是返回值是否创建成功 第一次创建该文件时,创建成功返回true 第二次创建该文件时,重复创建返回false mkdirs() 创建单级或者多级目录 第一次创建该文件时,创建成功返回true 第二次创建该文件时,重复创建返回false delete() 删除文件或目录 先把文件封装起来 然后再删除 删除不走回收站 返回值代表是否删除成功 第一次删除该文件时,删除成功返回true 第二次删除该文件时,重复删除返回false

Java 常用IO流操作详解

点点圈 提交于 2019-12-04 07:57:17
1.基本概念 IO:Java对数据的操作是通过流的方式,IO流用来处理设备之间的数据传输,上传文件和下载文件,Java用于操作流的对象都在IO包中。 2.IO流的分类 图示:(主要IO流) 3.字节流 (1).字节流基类 1).InputStream InputStream:字节输入流基类,抽象类是表示字节输入流的所有类的超类。 常用方法: // 从输入流中读取数据的下一个字节 abstract int read() // 从输入流中读取一定数量的字节,并将其存储在缓冲区数组 b中 int read(byte[] b) // 将输入流中最多 len 个数据字节读入 byte 数组 int read(byte[] b, int off, int len) // 跳过和丢弃此输入流中数据的 n个字节 long skip(long n) // 关闭此输入流并释放与该流关联的所有系统资源 void close() 2).OutputStream OutputStream:字节输出流基类,抽象类是表示输出字节流的所有类的超类。 常用方法: // 将 b.length 个字节从指定的 byte 数组写入此输出流 void write(byte[] b) // 将指定 byte 数组中从偏移量 off 开始的 len 个字节写入此输出流 void write(byte[] b, int off,

IO//管道流

雨燕双飞 提交于 2019-12-03 23:44:55
管道流 : PipedInputStream 、 PipedOutputStream import java.io.*; import java.util.*; public class Practice_2 { public static void main(String[] args) throws IOException { // TODO Auto-generated method stub PipedInputStream in = new PipedInputStream(); PipedOutputStream out = new PipedOutputStream(); in.connect(out); Read r = new Read(in); Write w = new Write(out); new Thread(r).start(); new Thread(w).start(); } } class Read implements Runnable { private PipedInputStream in; Read(PipedInputStream in) { this.in = in; } public void run() { try { byte[] buf = new byte[1024]; System.out.println("读取前

Java中IO流,输入输出流概述与总结

痴心易碎 提交于 2019-12-03 22:53:50
Java中IO流,输入输出流概述与总结 总结的很粗糙,以后时间富裕了好好修改一下。 1:Java语言定义了许多类专门负责各种方式的输入或者输出,这些类都被放在java.io包中。其中, 所有输入流类都是抽象类 InputStream(字节输入流),或者抽象类Reader(字符输入流)的子类 ; 而所有输出流都是 抽象类OutputStream(字节输出流)或者Writer(字符输出流)的子类。 【首先需要明白的是:流是干什么的???(为了永久性的保存数据) 根据数据流向的不同分为输入流和输出流; 根据处理数据类型的不同分为字符流和字节流; 】 【然后需要明白的是输入模式和输出模式是谁流向谁: InputStream(字节输入流)和Reader(字符输入流)通俗的理解都是读(read)的。 OutputStream(字节输出流)和Writer(字符输出流)通俗的理解都是写(writer)的。 】 最后下面搞清楚各种流的类型的该怎么用,谁包含谁,理清思路。 2:InputStream类是字节输入流的抽象类,是所有字节输入流的父类,InputStream类具有层次结构如下图所示; 3:java中的字符是Unicode编码的,是双字节的。InputStream是用来处理字节的,在处理字符文本时很不方便。Java为字符文本的输入提供了专门的一套类Reader

day22-----------IO流(传智视频)

久未见 提交于 2019-12-03 21:55:32
登录注册案例IO版实现 该案例是由day17的登录改版而来,只修改了,impl类的文件,将其中的的存储用户信息,存储到文件即可,还有一些小细节,注释都有体现。 package cn.itcast.dao.impl; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; import java.io.FileNotFoundException; import java.io.FileReader; import java.io.FileWriter; import java.io.IOException; import cn.itcast.dao.UserDao; import cn.itcast.pojo.User; /** * 这是用户操作的具体实现类(IO版) * * @author 风清扬 * @version V1.1 * */ public class UserDaoImpl implements UserDao { // 为了保证文件一加载就创建 private static File file = new File("user.txt"); static { try { file.createNewFile(); } catch (IOException e

Io流

荒凉一梦 提交于 2019-12-03 21:23:06
io流的继承体系 字节流继承体系 字符流继承体系 IO流概述 IO流用来处理设备之间的数据传输 Java对数据的操作是通过流的方式 Java用于操作流的对象都在IO包中 java.io IO流分类 1:按照数据流向 站在内存角度 输入流 读入数据 输出流 写出数据 2:按照数据类型 字节流 可以读写任何类型的文件 比如音频 视频 文本文件 字符流 只能读写文本文件 什么情况下使用哪种流呢? 如果数据所在的文件通过windows自带的记事本打开并能读懂里面的内容,就用字符流。其他用字节流。 IO流基类概述 IO流基类概述 1.字节流的抽象基类: InputStream ,OutputStream。 2.字符流的抽象基类: Reader , Writer。 注:由这四个类派生出来的子类名称都是以其父类名作为子类名的后缀。 如:InputStream的子类FileInputStream。 如:Reader的子类FileReader。 FileOutputStream写出数据 构造方法 FileOutputStream(File file) FileOutputStream(String name) 案例演示 FileOutputStream写出数据 注意事项: 创建字节输出流对象了做了几件事情? 1.系统资源创建a.txt文件 2.建了一个fos对象 3.fos对象指向这个文件

Java IO之处理流

社会主义新天地 提交于 2019-12-03 10:46:01
一、处理流: 增强功能,提供性能,在节点流之上。 二、节点流与处理流的关系 节点流(字节流、字符流)处于 IO 操作的第一线,所有操作必须通过它们进行; 处理流可以对其他流进行处理(提高效率或操作灵活性)。 三、缓冲流 1 、字节缓冲流 BufferedInputStream BufferedOutputStream package IOBuffer; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; /** * 处理流(字节缓冲流) * 字节流文件拷贝 + 缓冲流,提高性能 * 缓冲流(节点流) */ @SuppressWarnings("all") public class Demo01 { public static void main(String[] args) { String srcPath = "G:/1314.jpg"; String