`
1140566087
  • 浏览: 547110 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
博客专栏
2c4ae07c-10c2-3bb0-a106-d91fe0a10f37
c/c++ 入门笔记
浏览量:18055
3161ba8d-c410-3ef9-871c-3e48524c5263
Android 学习笔记
浏览量:309241
Group-logo
J2ME 基础学习课程集
浏览量:17958
A98a97d4-eb03-3faf-af96-c7c28f709feb
Spring 学习过程记录...
浏览量:17183
社区版块
存档分类
最新评论

java IO 流-字节流-字符流-缓冲流 详细案例

阅读更多
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.FileWriter;


// 流 	以 内存 为参照
//  字节流 :	 FileOuputStream	FileInputStream
//  字符流 :	 FileWriter 		FileReader
//	缓冲流:	BufferedWriter		BufferedReader
public class IO {
	public static void main(String[] args){
		fileReader();
	}
	
	//字节流   输出流
	public static void fileOutputStream(){
		File f = new File("e:\\text.txt");	//指定到支持的文件
		
		try{
			//文件不存在时创建
			if(f.exists()==false){
				f.createNewFile();
			}
			FileOutputStream fos = new FileOutputStream(f);
			String str = "今天的天气很闷沉";
			byte[] b = str.getBytes();
			fos.write(b);
			fos.close();
		}catch(Exception ex){
			ex.printStackTrace();
		}	
	}
	
	//字符流  输出流
	public static void fileWriter(){
		File f = new File("e:\\text.txt");
		try{
			
			if(f.exists()==false){
				f.createNewFile();
			}
			FileWriter fw = new FileWriter(f,true);	//true 表示不覆盖文件里面的内容
			String str = "今天的天气很闷沉";
			char[] ch = str.toCharArray();
			fw.write("\r\n");	//写入换行
			fw.write(ch);	
			fw.close();
		}catch(Exception ex){
			ex.printStackTrace();
		}	
	}
	
	// 缓冲流   输出流
	public static void bufferedWriter(){
		File f  = new File("e:\\text.txt");
		try{
			
			if(f.exists()==false){
				f.createNewFile();
			}
			BufferedWriter bw = new BufferedWriter(new FileWriter(f,true));	// 以字符流的对象为参数
			
			//缓冲流可以直接操作字符
			bw.write("\r\n");
			bw.write("天气不是很好!");
			
			bw.close();
		}catch(Exception ex){
			ex.printStackTrace();
		}	
	}
	
	//字节流 输入流
	public static void fileInputStream(){
		File f  = new File("e:\\text.txt");
		try{
			
			if(f.exists()==false){
				f.createNewFile();
			}
			FileInputStream fis = new FileInputStream(f);	
			
			// 字节数组的长度 ,由文件的字节大小
			byte[] b = new byte[(int)f.length()];
			fis.read(b);		//读入数据
			
			String str = new String(b);	//以字节数组构建字符串
			
			fis.close();
			System.out.println(str);
		}catch(Exception ex){
			ex.printStackTrace();
		}	
	}
	
	//字符流  输入流
	public static void fileReader(){
		File f = new File("e:\\text.txt");
		try{
			if(!f.exists()){
				f.createNewFile();
			}
			
			FileReader fr = new FileReader(f);
			
			StringBuffer sb = new StringBuffer();
			char[] ch = new char[1000];	// 字符的长度未知
			int hasRead = 0;
			while((hasRead=fr.read(ch))>0){
				sb.append(new String(ch,0,hasRead));
			}	
			
			fr.close();
			System.out.println(sb);
		}catch(Exception ex){
			ex.printStackTrace();
		}
	}

	//缓冲刘 输入流
	public static void bufferedReader(){
		File f = new File("e:\\text.txt");
		try{
			if(!f.exists()){
				f.createNewFile();
			}
			BufferedReader br  = new BufferedReader(new FileReader(f));	//字符流的对象构造
			
			//每次读取文件的一行
			StringBuffer sb = new StringBuffer();
			while(br.ready()){	//是否有读取内容
				sb.append(br.readLine());	//读取一行
				sb.append("\r\n");		//换行
			}
			br.close();
			System.out.println(sb);
			
		}catch(Exception ex){
			ex.printStackTrace();
		}
	}
}
1
2
分享到:
评论

相关推荐

    JAVA IO流缓冲字节流缓冲字符流等流经典代码示例加注释总结.rar

    2、常用21个IO流:FileWriter、FileReader、...3、JAVA IO流经典代码示例,示例从易到难。代码功能涉及字节、字符、字符串、文本文件、图片、音频、视频。演示错误用法和经典用法。 4、代码的结构可查看README文件。

    Java IO 体系.md

    - 字节流与字符流的转换 - 新潮的 NIO - 缓冲区(Buffer) - 通道(Channel) - 示例:文件拷贝案例 - BIO 和 NIO 拷贝文件的区别 - 操作系统的零拷贝 - 选择器(Selectors) - 选择键(SelectionKey) - ...

    JavaIO实例_字节流_字符流_缓冲流_转换流IODemo

    JavaIO实例,包括:字节流、字符流、缓冲流、转换流

    Java的IO流讲解代码: File 类、RandomAccessFile 类、字节流(文件字节流、缓冲字节流、基本数据类型

    File 类、RandomAccessFile 类、字节流(文件字节流、缓冲字节流、基本数据类型字节流、打印流、对象序列化流、字节数组流)、字符流(缓冲字符流、文件字符流、转换流、格式化输出流、字符数组流) 这份代码源码...

    JavaIO实例|字节流|字符流|缓冲流|转换流IODemo

    Java中IO流实例,包括:字节流、字符流、缓冲流、转换流的操作。

    java IO流 1. 流的概念 2. 输入流和输出流 3. 字符流、字节流 4. 缓冲流 5. 转换流处理流

    java IO流 1. 流的概念 2. 输入流和输出流 3. 字符流、字节流 4. 缓冲流 5. 转换流处理流

    Java之IO流学习总结

    从上面的图中可以看出Java IO 中的字节流是极其对称的。“存在及合理”我们看看这些字节流中不太对称的几个类吧! LineNumberInputStream 主要完成从流中读取数据时,会得到相应的行号,至于什么时候分行、在哪里...

    java IO流学习笔记——(3)字节缓冲流&字符缓冲流&转换流&数据流

    java IO流学习笔记——(3)字节缓冲流&字符缓冲流&转换流&数据流 目录java IO流学习笔记——(3)字节缓冲流&字符缓冲流&转换流&数据流字节缓冲流 —BufferedInputStream&BufferedOutputStream字符缓冲流—...

    02【字节流、字符流】.html

    Java文件流知识点梳理总结,IO文件流,包含了File类、缓冲流、字节流、字符流、转换流等

    字节流字符流练习

    字节流与字符流的练习文档,内附一个简要的记事本综合文档。

    java源码包---java 源码 大量 实例

     Java数据压缩与传输实例,可以学习一下实例化套按字、得到文件输入流、压缩输入流、文件输出流、实例化缓冲区、写入数据到文件、关闭输入流、关闭套接字关闭输出流、输出错误信息等Java编程小技巧。 Java数组倒置...

    JavaIO流精讲上

    课程内容主要有:File类概述、File类功能讲解、JAVA IO流概述、字节流、字符流、缓冲流、InputStream、OutputStream、Reader、Writer、FileInputStream、FileOutputStream、InputStreamReader、OutputStreamWriter、...

    Java中的IO流(二)字符流的常用操作

    今天带来的是JAVA的IO流中的字符流,Reader和Writer子类流的用法。 基础概念 流是一种抽象概念,它代表了数据的无结构化传递。按照流的方式进行输入输出,数据被当成无结构的字节序或字符序列。从流中取得数据的操作...

    Java中的IO流

    IO流按照流向分类可分为输入和输出,按照文件操作处理单元分类可分为字节流和字符流。 FileInputStream 文件操作输入字节流 FileOutputStream 文件操作输出字节流 FileReader 文件操作输入字符流 FileWriter 文件...

    java7源码-java-nio-master:Java

    按照操作单元划分,可以划分为字节流和字符流; 按照流的角色划分为节点流和处理流。 流的原理浅析: java Io流共涉及40多个类,这些类看上去很杂乱,但实际上很有规则,而且彼此之间存在非常紧密的联系, Java Io流...

    Java中的IO流(一)字节流的常用操作

    今天带来的是JAVA的IO流中的字节流,InputStream和OutputStram子类流的用法。 基础概念 流是一种抽象概念,它代表了数据的无结构化传递。按照流的方式进行输入输出,数据被当成无结构的字节序或字符序列。从流中取得...

    详解java IO流之缓冲流的使用

    本文主要介绍了java的IO流中的缓冲流的使用,缓冲流分为字节和字符缓冲流。分享了有关它们的实例代码,具有一定的参考价值,下面跟着小编一起来看下吧

    基础深化和提高-IO流技术学习大全

    另外,Java还提供了一些高级的流类,如缓冲流、对象流、数据流等,它们在底层字节流和字符流的基础上提供了更多的功能和便利。 除了基本的文件和网络I/O之外,Java的NIO(New I/O)技术也是I/O流领域的重要发展。...

    java72-java-advance.rar

    a) 字符b)字节c)字节数组D)对象 4. 下列流中哪一个使用了缓冲区技术A A.BuffereOutputStream B. FileInputStream C. DataOutputStream D.FileReader 5.下列字节输入流中,哪一个不能够被实例化B A....

    java IO章节的总结

    IO从大的方向上分为字节流和字符流,包括四个抽象类: 1、输入:Reader, InputStream类型的子类(字符,字节) 2、输出:Writer, OutputStream类型的子类(字符,字节) 决定使用哪个类以及它的构造进程的一般...

Global site tag (gtag.js) - Google Analytics