java IO流(一)----读写文件

IO体系:

输入/输出流体系

 

分类

字节输入流

字节输出流

字符输入流

字符输出流

抽象基类

InputStream

OutputStream

Reader

Writer

访问文件

FileInputStream

FileOutputStream

FileReader

FileWriter

访问数组

ByteArrayInputStream

ByteArrayOutputStream

CharArrayReader

CharArrayWriter

访问管道

PipedInputStream

PipedOutputStream

PipedReader

PipedWriter

访问字符串

 

 

StringReader

StringWriter

缓冲流

BufferedInputStream

BufferedOutputStream

BufferedReader

BufferedWriter

转换流

 

 

InputStreamReader

OutputStreamWriter

对象流

ObjectInputStream

ObjectOutputStream

 

 

抽象基类

FilterInputStream

FilterOutputStream

FilterReader

FileWriter

打印流

 

PrintStream

 

 

推回输入流

PushbackInputStream

 

PushbackReader

 

特殊流

DataInputStream

DataOutputStream

 

 


流的单向性: 

   输入流:只能从中读取数据,不能写入数据

   输出流:只能从中写入数据,不能从中读取数据

读写文件的主要是用到FileInputStream和FileOutputStream,他们分别是继承了,InputStream和OutputStream,下面就写一个读取文件以及写入数据到一个文件的例子。

 

package com.io;

import java.io.*;

public class MyIO {

	 
	public static void main(String[] args) {
		//读取文件
		int b = 0;
		FileInputStream in = null;
		try{
		in = new FileInputStream("D://java//ThrowsDemo.java");
		}catch (FileNotFoundException e) {
		System.out.println("找不到指定文件");
		System.exit(-1);
		}

		try{
		long num = 0;
		while((b=in.read())!=-1) {
		System.out.print((char)b);
		num++;
		}
		in.close();
		System.out.println();
		System.out.println("共读取了"+num+"个字节");

		}catch (IOException e1) {
		System.out.println("文件读取出错");System.exit(-1);
		}
		//写文件
		int b1 = 0;
		FileInputStream in1 = null;
		FileOutputStream out = null; 
		try{
		in1 = new FileInputStream("D://java//ThrowsDemo.java");
		out = new FileOutputStream("D://java//Throw.java");
		while((b1=in1.read())!=-1) {
		out.write(b1);
		}
		in1.close();
		out.close();
		}catch (FileNotFoundException e2) {
		System.out.println("找不到指定文件");System.exit(-1);
		}catch(IOException e1) {
		System.out.println("文件复制出错");System.exit(-1);
		}
		System.out.println("文件已复制");
	}

}

 基本的文件操作就是这样,总的来说就是输入输出流。而输入、输出流可分为字节流和字符流两大类,下面继续详说。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值