Java文件字节流和字符流
输入流:只能从中读取数据,不能向其写入数据。
InputStream,Reader
输出流:只能向其中写入数据,不能从中读取数据。
OutputStream, Writer
输入流是相对于程序而言,外部传入数据给程序需要借助输入流。
输出流是相对程序而言的,程序把数据传输到外部需要借助输出流。
字符流主要是读取文本文件内容的,可以一个字符一个字符的读取,也可以一行一行的读取文本文件内容。
字节流读取单位为byte.byte作为计算机存储最基本单位,可以用字节流来读取很多其他格式的文件,比如图片视频等等。
isFile:判断是否为文件
isDirectory:判断是否为目录
getAbsoluteFile:获取绝对路径
getName:文件名字
getFreeSpace()/1024/1024/1024:空闲硬盘大小
listFiles():列出所有的文件
getPath():获取路径信息
createNewFile():创建文件
mkdirs():创建目录
字符流处理的单元为2个字节的Unicode字符,分别操作字符、字符数组或字符串。
字节流处理单元为1个字节,操作字节和字节数组。
字符流是由Java虚拟机将字节转化为2个字节的Unicode字符为单位的字符而成的,所以它对多国语言支持性比较好!如果是音频文件、图片、歌曲,就用字节流,如果是关系到中文(文本)的,用字符流。