`

黑马程序员20-9: FileReader字符输入流,读者,控制一次读取的字节数优化效率

 
阅读更多
------- android培训 java培训、期待与您交流!-------


package cn.itcast.p3.io.filereader;

import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;

//需求:读取一个文本文件。将读取到的字符打印到控制台.

public class FileReaderDemo {

	/**
	 * @param args
	 * @throws IOException 
	 */
	public static void main(String[] args) throws IOException {

		
		//1,创建读取字符数据的流对象。
		/*
		 * 在创建读取流对象时,必须要明确被读取的文件。一定要确定该文件是存在的。 
		 * 
		 * 用一个读取流关联一个已存在文件。 
		 */
		FileReader fr = new FileReader("demo.txt");
		
		int ch = 0;
		
		while((ch=fr.read())!=-1){
			System.out.println((char)ch);
		}
		
		/*
		//用Reader中的read方法读取字符。
		int ch = fr.read();
		System.out.println((char)ch);
		int ch1 = fr.read();
		System.out.println(ch1);
		int ch2 = fr.read();
		System.out.println(ch2);
		*/
		
		fr.close();
	}

}




package cn.itcast.p3.io.filereader;

import java.io.FileReader;
import java.io.IOException;

//需求:读取一个文本文件。将读取到的字符打印到控制台.

public class FileReaderDemo2 {

	/**
	 * @param args
	 * @throws IOException 
	 */
	public static void main(String[] args) throws IOException {

		FileReader fr = new FileReader("demo.txt");
		
		/*
		 * 使用read(char[])读取文本文件数据。
		 *  
		 * 先创建字符数组。
		 */
		//由于一次读1024个字节
		char[] buf = new char[1024];
		
		int len = 0;
		//于是循环次数大大降低
		while((len=fr.read(buf))!=-1){
			System.out.println(new String(buf,0,len));
		}
		
		/*
		int num = fr.read(buf);//将读取到的字符存储到数组中。
		System.out.println(num+":"+new String(buf,0,num));
		int num1 = fr.read(buf);//将读取到的字符存储到数组中。
		System.out.println(num1+":"+new String(buf,0,num1));
		int num2 = fr.read(buf);//将读取到的字符存储到数组中。
		System.out.println(num2+":"+new String(buf));
		*/
		
		fr.close();
	}

}



------- android培训 java培训、期待与您交流!-------


详细请查看:http://edu.csdn.net/heima -------
分享到:
评论

相关推荐

    javaIO(java中的流的介绍)

    - Reader:所有字符输入流的基类,从源读取字符。 - CharArrayReader:从字符数组创建的字符输入流。 - StringReader:从字符串创建的字符输入流。 - FileReader:从文件读取字符,使用系统的默认字符编码。 - ...

    JDK6API中文参考070114

    - InputStreamReader:字符输入流的转换器,用于将字节流转换为字符流,支持不同字符编码。例如,使用FileInputStream读取文件时,可以配合InputStreamReader指定字符编码。 - OutputStreamWriter:字符输出流的...

    java输入输出流.ppt

    - Reader是所有字符输入流的基类,例如: - InputStreamReader:将字节流转换为字符流,通常与InputStream一起使用。 - BufferedReader:提供缓冲的字符读取,可以按行读取文本。 - FileReader:直接从文件读取...

    Input和Output.pdf

    例如,DataInputStream可以读取基本类型的Java数据类型,BufferedInputStream使用缓冲技术提高效率,LineNumberInputStream记录输入流中的行数。这些过滤流可以在原有流的基础上增加额外的功能,比如缓存、格式化或...

    黑马程序员_毕向东_Java基础视频教程第18天-12-IO流(文本文件读取练习).zip

    在这个“黑马程序员_毕向东_Java基础视频教程第18天-12-IO流(文本文件读取练习)”中,毕向东老师将深入讲解如何使用Java IO流来读取文本文件。Java IO流提供了多种类和方法,使得开发者可以灵活高效地处理输入和输出...

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

    `Reader`和`Writer`是所有字符输入流和输出流的基类。 - 示例:`BufferedReader`和`BufferedWriter`提供了缓冲功能,提高读写效率;` FileReader`和`FileWriter`专门用于读写文件中的字符数据。 3. **缓冲流**: ...

    JAVA 字符流与字节流

    在Java编程语言中,输入/输出(I/O)操作是处理数据流的关键部分,而字符流与字节流则是实现这些操作的两种基本方式。理解它们的区别和应用场景对于任何Java开发者来说都是至关重要的。 ### 字节流 字节流是最基本...

    JAVA输入流和输出流

    InputStreamReader是将字节输入流转换为字符输入流,而OutputStreamWriter则反之。 **5. 对象序列化与反序列化** Java还支持对象的输入流(ObjectInputStream)和输出流(ObjectOutputStream),它们允许将Java对象...

    JAVA输入与输出 java流基本流程图

    Java的字符输入流(Char Input Stream)和字符输出流(Char Output Stream)体系结构如下: 1. **字符输入流体系结构**: - `BufferedReader`:高效地读取字符数据,使用缓冲区。 - `CharArrayReader`:从字符...

    io流详解,字符流和字节流代码

    - **Reader/Writer**:字符输入流和字符输出流是字符流的基类,它们处理字符数据。例如, FileReader和FileWriter分别用于读取和写入文本文件。 - **InputStreamReader/OutputStreamWriter**:字节到字符的桥梁,...

    JAVA中的IO流简介

    - `BufferedReader`:带缓冲的字符输入流,提高读取效率。 - `InputStreamReader`:将字节流转换为字符流,通常用于将`InputStream`转换为`Reader`。 - 特殊子类如`FileReader`和`FilterReader`等,提供特定场景...

    Java字节流与字符流的介绍.pdf

    2. DataInputStream:从输入流中读取基本数据类型,如 int、float、double 或者甚至一行文本 3. LineNumberInputStream:在翻译行结束符的基础上,维护一个计数器,该计数器表明正在读取的是哪一行 4. ...

    IO流

    - Reader:所有字符输入流的超类,处理字符数据。FileReader是直接从文件读取字符的实现。 - Writer:所有字符输出流的超类,用于写入字符数据。FileWriter则用于向文件写入字符。 - BufferedReader和...

    JAVA范例 七)输入/输出流---字符流

    `Reader`类是所有字符输入流的抽象基类,而`Writer`类则代表所有字符输出流的基类。它们都位于`java.io`包下。 1. **`Reader`类**: - `InputStreamReader`:它是从字节流到字符流的桥梁,可以指定字符编码,例如...

    607.605.JAVA基础教程_IO流与网络编程-复习:IO流概述(607).rar

    在Java中,IO流分为字符流和字节流两大类,每类又包含输入流(InputStream/Reader)和输出流(OutputStream/Writer)。本教程主要针对IO流的概述进行复习,帮助学习者理解和掌握这一关键概念。 1. 字节流:字节流...

    输入与输出

    - `BufferedReader`: 带缓冲区的字符输入流,提高读取效率。 - `LineNumberReader`: 继承自`BufferedReader`,记录行号。 - `CharArrayReader`: 用于从字符数组中读取数据。 - `InputStreamReader`: 用于将字节...

    Java基础11-(字节流、字符流)

    与FileWriter类似,FileReader也有多种构造方法,可以使用文件路径或文件名来创建一个字符输入流。通过使用Reader类的子类,我们能够读取存储在不同字符编码格式的文本文件。 最后,Properties类在Java中用于处理...

    JAVA IO流详解

    - `Reader`:字符输入流,用于读取字符数据。 - `Writer`:字符输出流,用于写入字符数据。 #### 四、常用IO流类介绍 1. **InputStream/OutputStream** - `InputStream`: 输入流的基类。 - `...

    Java IO 字节流 字符流

    Reader是所有字符输入流的基类,如 FileReader,它可以从文件读取字符;而Writer是所有字符输出流的基类,如 FileWriter,用于向文件写入字符。字符流主要用于处理文本数据,如文本文件、XML文档等。 Java IO库设计...

Global site tag (gtag.js) - Google Analytics