栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

java io 输入输出流的使用

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

java io 输入输出流的使用

package com.situ.chapter2;

import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.OutputStream;

public class testall {

	public static void main(String[] args) throws IOException, ClassNotFoundException  {
		
		//byte   FileInputStream
		//char   FileReader
		//object ObjectOutputStream
		
		byteinout();//字节输入输出流
		charinout();//字符输入输出流
		objectinout();//对象输入输出流
	}

	private static void objectinout() throws IOException, ClassNotFoundException {
		// TODO 自动生成的方法存根    向目标文件存一个对象,然后取出输出到控制台
	    Employee em1=new Employee("张三丰","nan");//对象em1
		File target=new File("C:\Users\11251\Desktop\aaa.dat");
		if(!target.exists()) {//判断存在,否则创建新文件
			target.createNewFile();
		}
		OutputStream out=new FileOutputStream(target);//输出流
		ObjectOutputStream out1=new ObjectOutputStream(out);
		out1.writeObject(em1);
		out1.close();
		
		File file=new File("C:\Users\11251\Desktop\aaa.dat");
		InputStream in=new FileInputStream(file);//创建输入流				
		ObjectInputStream  in1=new ObjectInputStream(in);		
		Employee object = (Employee) in1.readObject();//序列化
		in1.close();
		
		System.out.println(object.getName());
        System.out.println(object.getSex());		
	}

	private static void charinout() throws IOException {
		// TODO 自动生成的方法存根
		File file = new File("C:\Users\11251\Desktop\aaa.txt");
		File target = new File("C:\Users\11251\Desktop\bbb.txt");
		if(!target.exists()) {//判断存在,否则创建新文件
			target.createNewFile();
		}
		
		FileReader reader=new FileReader(file);		//写入流对象
	    FileWriter writer =new FileWriter(target,true);//写出流对象
        
  		BufferedReader br = new BufferedReader(reader);//缓冲流
//        System.out.println(br.readLine());//只读一遍  		
		
	    String data=null;
	    while((data=br.readLine())!=null) {
	    	writer.write(data+"n");
	    	writer.flush();
	    }
			
	}

	private static void byteinout() throws IOException{
		// TODO 自动生成的方法存根
		
		File file = new File("C:\Users\11251\Desktop\aaa.txt");
		File target = new File("C:\Users\11251\Desktop\bbb.txt");
		if(!target.exists()) {//判断存在,否则创建新文件
			target.createNewFile();
		}
		
		FileInputStream fis = new FileInputStream(file);
		FileOutputStream fos = new FileOutputStream(target,true);
		
		byte[] b=new byte[2222];
		int data =0;
		while((data=fis.read(b))!=-1) {
			fos.write(b, 0, data);//读取b,从0到data
		}
		fis.close();
		fos.close();
	}

}

byte   FileInputStream
char   FileReader
object ObjectOutputStream

数据流基本类型

IO:input/output,输入输出 BIOS:basic input/output system
数据从一个地方转移到另一个地方。
流按方向分成两种:
1.输入流:从数据源流到程序中(内存)。InputStream
2.输出流:从程序中(内存)流到目标位置。OutputStream
流按流动的单位分成两种:
1. 字节流:流动的单位是字节。
2. 字符流:流动的单位是字符。FileReader 文件字符输入流

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/353971.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号