黑马程序员——java基础之IO流
来源:互联网 发布:小米4能用移动4g网络吗 编辑:程序博客网 时间:2024/05/28 08:29
------<a href="http://www.itheima.com" target="blank">Java培训、Android培训、iOS培训、.Net培训</a>、期待与您交流! -------
IO流
IO(Input Output)流用来处理设备之间的数据传输。
java对数据的操作是通过流的方式。
java用于操作流的对象都在IO包中。
流按操作数据分为两种:字节流与字符流。
流按流向分为:输入流,输出流。
IO分为字符流和字节流。
字节流两个基类:InputStream OutputStream
字符流两个基类:Reader Writer
字节流两个基类:InputStream OutputStream
字符流两个基类:Reader Writer
注意:由这四个类派生出来的子类名称都是以其父类名作为子类名后缀。如:InputStream的子类FileInputStream.
_________________________________________________________________________________
System:类中的方法和属性都是静态的。
out:标准输出,默认是控制台。
in:标准输入,默认是键盘。
描述系统一些信息,获取系统属性信息:Properties getProperties();
Runtime:将java运行程序和运行环境相连接的类
它没有构造函数,它不可以new对象,
static Runtime getRuntime();它使用了单利设计模式
Date:日期类将模式封装到 SimpleDateFormat对象中。
Math数学类。数学方法。
out:标准输出,默认是控制台。
in:标准输入,默认是键盘。
描述系统一些信息,获取系统属性信息:Properties getProperties();
Runtime:将java运行程序和运行环境相连接的类
它没有构造函数,它不可以new对象,
static Runtime getRuntime();它使用了单利设计模式
Date:日期类将模式封装到 SimpleDateFormat对象中。
Math数学类。数学方法。
__________________________________________________________________________________
字符流有:FileWriter和FileReader
它的缓冲区是:BufferedReader 和BufferedWriter
字节流有:InputStream 和OutputStream
它的缓冲区是:BufferedInputStream和BufferedOutputStream
它的缓冲区是:BufferedReader 和BufferedWriter
字节流有:InputStream 和OutputStream
它的缓冲区是:BufferedInputStream和BufferedOutputStream
字符串缓冲区
BufferedReader和BufferedWriter缓冲区的出现是为了提高流的操作效率而出现的。
所以在创建缓冲区之间,必须要先有流对象。
BufferedWriter该缓冲区中提供了一个跨平台的换行符:newLine();
字符读取流缓冲区BufferedReader该缓冲区提供了一个一次读一行的方法:readLine();
方便于对文本数据的获取。
当返回null时,表示读到文件末尾。
readLine()方法返回的时候只返回回车符之前的数据内容,并不返回 回车符。
readLine()方法的原理:无论是读一行,或读取多个字符,其实最终都是在硬盘上一个一个读取。
所以最终使用的还是read方法一次读一个的方法
BufferedReader和BufferedWriter缓冲区的出现是为了提高流的操作效率而出现的。
所以在创建缓冲区之间,必须要先有流对象。
BufferedWriter该缓冲区中提供了一个跨平台的换行符:newLine();
字符读取流缓冲区BufferedReader该缓冲区提供了一个一次读一行的方法:readLine();
方便于对文本数据的获取。
当返回null时,表示读到文件末尾。
readLine()方法返回的时候只返回回车符之前的数据内容,并不返回 回车符。
readLine()方法的原理:无论是读一行,或读取多个字符,其实最终都是在硬盘上一个一个读取。
所以最终使用的还是read方法一次读一个的方法
File类
①创建
boolean createNewFile():在指定位置创建文件,如果该文件已存在,则不创建,返回false 和输出流不一样,输出流对象一建立,而且文件存在的话会被覆盖。
boolean mkdir():创建文件夹
boolean mkdirs():创建多级文件夹
②删除
boolean delete();删除失败,返回false
void deleteOnExit():在程序退出时,删除指定文件
③判断
boolean exists():文件是否存在。
boolean isFile():判断是否是文件夹
boolean isDirectory():判断是否是文件
boolean isHidden():文件是否是一个隐藏文件
boolean isAbsolute():判断路径是否是绝对。
④获取信息
String getName():获取名称
String getPath():获取封装的路径
String getParent():如果封装没有加上路径,就会null,它返回是绝对路径中父目录
String getAbsolutePath():获取绝对路径
long lastMidified():路径最后一次修改时间
long length():文件的长度
①创建
boolean createNewFile():在指定位置创建文件,如果该文件已存在,则不创建,返回false 和输出流不一样,输出流对象一建立,而且文件存在的话会被覆盖。
boolean mkdir():创建文件夹
boolean mkdirs():创建多级文件夹
②删除
boolean delete();删除失败,返回false
void deleteOnExit():在程序退出时,删除指定文件
③判断
boolean exists():文件是否存在。
boolean isFile():判断是否是文件夹
boolean isDirectory():判断是否是文件
boolean isHidden():文件是否是一个隐藏文件
boolean isAbsolute():判断路径是否是绝对。
④获取信息
String getName():获取名称
String getPath():获取封装的路径
String getParent():如果封装没有加上路径,就会null,它返回是绝对路径中父目录
String getAbsolutePath():获取绝对路径
long lastMidified():路径最后一次修改时间
long length():文件的长度
public class File {public void fileread() throws IOException{FileReader fir = new FileReader("fi.txt");char[] ch = new char[1024];int num = 0;while((num=fir.read(ch))!=-1){System.out.println(new String(ch,0,num));}fir.close();}public static void main(String[] args) throws IOException {//FileWriter fi = new FileWriter("fi.txt");//fi.write("1123");//将数据写入流中//fi.flush();//将数据刷到目的地//fi.close();//关闭流资源,流不能再使用FileWriter fi = null;try{fi = new FileWriter("fi.txt");fi.write("1123");}catch(IOException e){System.out.println(e.toString());}finally{try{if(fi != null);fi.close();}catch(IOException e){System.out.println(e.toString());}}File f = new File();f.fileread();}}
打印流:
该流提供了打印方法,可以将各种数据类型的数据都原样打印
字节打印流PrintStream
构造函数可以接收的参数类型。
1.file对象。File
2.字符串路径。String
3.字节输出流。OutputStream
字符打印流PrintWriter
构造函数可以接收的参数类型。
1.file对象。File
2.字符串路径。String
3.字节输出流。OutputStream
4.字符输出流。Writer
合并流:将多个流合并成一个流
切割流:将一个流切割成多个流
0 0
- 黑马程序员——java基础之IO流
- 黑马程序员——Java基础之IO流
- 黑马程序员——java基础之IO流
- 黑马程序员——Java基础之IO流
- 黑马程序员——Java基础IO流之File
- 黑马程序员——java基础之IO流
- 黑马程序员—java基础之IO流
- 黑马程序员—Java基础学习笔记之IO流
- 黑马程序员--JAVA基础之IO流
- 黑马程序员----Java基础之IO流
- 黑马程序员--JAVA基础之IO流
- 黑马程序员 Java基础之IO流
- 黑马程序员——java基础之IO
- 黑马程序员——Java基础---IO
- 黑马程序员——java基础--IO
- 黑马程序员——Java基础---IO
- 黑马程序员 Java基础——IO
- 黑马程序员—Java基础—IO
- Java Web框架之一层模型-JSP实现
- Linux下网络流量实时监控工具 大全
- 最小二乘支持向量机(LSSVM)简述
- NSString什么时候用copy,什么时候用strong
- Jmeter http请求 Demo(压测Elasticsearch)
- 黑马程序员——java基础之IO流
- 修改 openstack 中 nova boot 创建实例只能在10个以内的限制
- 指针函数与函数指针的区别
- 什么是DSL
- linux下iptraf和netperf的应用
- 百度新接口,让网页秒收
- 4.17&4.18
- list_style li 的点
- ios 直角和圆角 并存