IO中常用的方法
来源:互联网 发布:kmp算法next例题 编辑:程序博客网 时间:2024/06/08 17:36
IO流是java中比较常用的知识点,也是非常重要的知识点,所以学号IO很重要!
IO流对象分类
Input输入: 读取文件
Output输出: 写文件
按照流对象操作的文件类型分
字节流, 操作的文件中的最小组成单元字节,操作1个字节,8个二进制
字符流, 专门用于操作文本文件,操作1个字符,16个二进制
字节流,可以操作什么文件,所有都可以, JDK1.0字符流,只能操作文本文件,属于一种非常特殊的文件 JDK1.1
按照数据的流向分类
输出流,从Java程序中将输入输出到一个目的中,写文件
输入流,Java一个数据源读取数据到Java程序中,读文件
归类:
字节输出流: 写任意文件
字节输入流: 读取任意文件
字符输出流: 写文本文件
字符输入流: 读取文本文件
IO对象中的四大抽象基类
字节输出流: 最高父类 OutputStream
字节输入流: 最高父类 InputStream
字符输出流: 最高父类 Writer
字符输入流: 最高父类 Reader
OutputStream字节输出流,写文件
这个父类方法都是写的方法 write
write(int b) 写1个字节
write(byte[] b)写字节数组
write(byte[] b,int offset,length)写字节数组一部分,开始索引,写几个
close()关闭此流,释放所有操作系统资源
InputStream字节输入流,读取文件
这个父类方法都是读的方法 read
int read()读取1个字节
int read(byte[] b)读取字节数组,从流中读取的字节存储到数组中
int read(byte[] b,int offset,int length)读取字节数组一部分,从流中读取指定个数的字节,存储到数组中
close()关闭此流,释放所有操作系统资源
Writer字符输出流,写文本文件
这个父类方法都是写的方法 write
write(int c)写1个字符
write(char[] cbuf)写1个字符数组
write(char[] cbuf,int offset,int length)写字符数组一部分,开始索引,写几个
write(String s)写字符串
write(String s,int offset,int length)写字符串的一部分,开始索引,写几个
flush()刷新该流缓冲,字符输出流写数据,必须要刷新
close()关闭此流,释放所有操作系统资源,先刷新
Reader字符输入流,读取文本文件
这个父类方法都是读取的方法 read
int read()读取1个字符
int read(char[] cbuf)读取字符数组,从流中读取的字符存储到数组中
int read(char[] cbuf,int offset,int length)读取字符数组一部分,从流中读取指定个数的字符,存储到数组中
close()关闭此流,释放所有操作系统资源
下面上几个实例:
实例1:
package io;
import java.io.*;
public class FileInputStreamTest {
public static void main(String[] args) throws IOException{//新建一个获取类FileInputStream fis = null; try{ //在c盘下新建一个hello.txt的文件 fis = new FileInputStream("c:\\hello.txt"); byte[] arr = new byte[1024]; int n = 0; while((n = (fis.read(arr))) != -1){ System.out.println(new String(arr,0,n)); } } //对运行中可能存在的异常进行提示catch(IOException ex){ ex.printStackTrace(); throw new RuntimeException("文件读取失败!"); //finally是不管什么情况下都是要走的}finally{ try{ if(fis!=null) fis.close(); }catch(IOException ex){ ex.printStackTrace(); throw new RuntimeException("关闭失败"); }}fis.close();}
}
实例2:
//简单的文件复制功能
package cn.itcast.copy;
import java.io.*;
public class CopyText {
public static void main(String[] args) {
//定义出2个流对象的变量,不要new
FileInputStream fis = null;
FileOutputStream fos = null;
try{
//创建流对象
fis = new FileInputStream(“d:\abc.txt”);
fos = new FileOutputStream(“c:\abc.txt”);
//循环,读取数据源,读取1个字节,写1个字节
int len = 0 ;
while( ( len = fis.read()) !=-1){
fos.write(len);
}
}catch(IOException ex){
ex.printStackTrace();
throw new RuntimeException(“文件复制失败”);
}finally{
try{
if(fos!=null)
fos.close();
}catch(IOException ex){
throw new RuntimeException(“资源关闭失败”);
}finally{
try{
if(fis!=null)
fis.close();
}catch(IOException ex){
throw new RuntimeException(“资源关闭失败”);
}
}
}
}
}
以上是对IO流中的一些重点的一些总结,希望对刚开始学习IO流的人有些帮助,这些都是IO阶段的重点,也是后面做开发必须要掌握的!
- IO中常用的方法
- JAVA中IO流部分复制文件常用的四中方法
- JAVA IO处理文件的常用方法
- IO流----File类的常用方法
- java IO流File常用的方法
- java io 常用方法
- IO常用方法
- java 中常用的io流总结
- Java.io包中常用的类
- C#中常用的IO文件操作
- 【IO】中InputStream及其方法的演示
- 黑马程序员————————Java中IO流的一些常用的方法
- java.io.File操作文件的一些常用方法
- Apache组件commons的IO包常用方法实例
- java IO的File类常用方法总结一
- java IO的File类常用方法总结二
- ava IO的File类常用方法总结三
- IO流常用方法,流的用法,代码例子
- Linux 解压乱码问题
- ubuntu vi/vim 基本使用方法
- Objective-C Runtime Programming Guide 中文翻译
- 接口回调经典案例--网络请求回调
- maven环境搭建以及构建maven普通项目和web项目
- IO中常用的方法
- try-catch-finally块的执行流程
- MySQL数据库
- 最长不降奇偶交替子序列
- poj 2965 The Pilots Brothers' refrigerator
- mysql基本应用
- Kali Linux基本介绍
- JSP/Servlet-----12、Listener
- error 2003 (hy000):can't connect to mysql server on 'localhost' (10061),com.mysql.jdbc.exceptions.jd