java 字符流writer、reader基本操作及理解

字符和字节有什么区别,额……这个我也不知道。

1、基本操作实例

import java.io.*;

public class CharDemo
{
	public static void main(String[] args)
	{
		File f=new File("F:\\workspace\\Javaprj\\test.txt");

		Writer out=null;
		Reader in=null;
		try
		{
			out=new FileWriter(f);
			String str="Hello World!!!";
			out.write(str);
			System.out.println("The string "+"\"Hello World!!!\""+" has been written into "+f.getName()+".");
			out.close();

			in=new FileReader(f);
			char[] buf=new char[1024];
			int num=in.read(buf);
			if(num!=-1)
			{
				System.out.println("The string \""+ new String(buf,0,num) +"\" has been read from the file "+f.getName()+".");
			}
			else
			{
				System.out.println("The file \""+f.getName()+"\" is empty!");
			}
		}
		catch(IOException e)
		{
			e.printStackTrace();
		}
	}
}

2、注意的问题

将out.close();注释掉

import java.io.*;

public class CharDemo
{
	public static void main(String[] args)
	{
		File f=new File("F:\\workspace\\Javaprj\\test.txt");

		Writer out=null;
		Reader in=null;
		try
		{
			out=new FileWriter(f);
			String str="Hello World!!!";
			out.write(str);
			System.out.println("The string "+"\"Hello World!!!\""+" has been written into "+f.getName()+".");
			//out.close();

			in=new FileReader(f);
			char[] buf=new char[1024];
			int num=in.read(buf);
			if(num!=-1)
			{
				System.out.println("The string \""+ new String(buf,0,num) +"\" has been read from the file "+f.getName()+".");
			}
			else
			{
				System.out.println("The file \""+f.getName()+"\" is empty!");
			}
		}
		catch(IOException e)
		{
			e.printStackTrace();
		}
	}
}

java 字符流writer、reader基本操作及理解,布布扣,bubuko.com

时间: 2024-08-08 09:42:17

java 字符流writer、reader基本操作及理解的相关文章

Java字符流和字节流对文件操作

记得当初自己刚开始学习Java的时候,对Java的IO流这一块特别不明白,所以写了这篇随笔希望能对刚开始学习Java的人有所帮助,也方便以后自己查询.Java的IO流分为字符流(Reader,Writer)和字节流(InputStream,OutputStream),字节流顾名思义字节流就是将文件的内容读取到字节数组,然后再输出到另一个文件中.而字符流操作的最小单位则是字符.可以先看一下IO流的概述: 下面首先是通过字符流对文件进行读取和写入: 1 package lib; 2 3 import

Java IO操作——字节流(OutputStream、InputStream)和字符流(Writer、Reader)

学习目标 掌握流的概念 掌握字节流与字符流的作用 掌握文件的标准操作步骤 掌握字节与字符操作的区别 流的概念 在程序中所有的数据都是以流的方式进行传输或保存的,程序中需要数据的时候就用输入流读取数据,而当程序需要将一些数据保存起来的时候,就要使用输出流完成. 程序中的输入输出都是以流的形式保存的,流中保存的实际上全部是字节文件. 字节流与字符流 在java.io包中操作文件内容的主要有两大类:字节流和字符流,两类都分为输入和输出操作.在字节流中输出数据主要是使用OutputStream完成,输入

JavaIO(04)字符流--Writer and Reader

字符流: 常识:在java中一个字符等于两个字节: 操作字符流的两个类:Writer,Reader API文档介绍(Writer): public abstract class Writer extends Object implements Appendable, Closeable, Flushable 发现此类依然是抽象类,如果使用子类还是需要使用该子类,FileWriter; Writer类的常用方法: 关闭该流,但要先刷新它: public abstract void close() 

JAVA 字符流与字节流的区别

Java 流在处理上分为字符流和字节流.字符流处理的单元为 2 个字节的 Unicode 字符,分别操作字符.字符数组或字符串,而字节流处理单元为 1 个字节,操作字节和字节数组. Java 内用 Unicode 编码存储字符,字符流处理类负责将外部的其他编码的字符流和 java 内 Unicode 字符流之间的转换.而类 InputStreamReader 和 OutputStreamWriter 处理字符流和字节流的转换.字符流(一次可以处理一个缓冲区)一次操作比字节流(一次一个字节)效率高

java字符流

/* 字符流 Reader Writer--FileWriter 字符流缓冲区:提高流操作效率 BufferedReader BufferedWriter */ package pack; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.FileReader; import java.io.FileWriter; import java.io.LineNumberReader; public

java 字符流 字节流

java对文本文档进行操作(拷贝.显示)出现乱码一般来说,可以从两个方面入手. 1.文本文件本身的编码格式. 2.java代码中处理文本文件的编码格式. 这里要注意的一点是,我们可以看出copyFileByByte方法和copyFileByChar1方法都是没有办法设置目的文件的编码格式的,并且处理不好都可能出现乱码,但是需要明确一点的是,copyFileByByte方法拷贝的文件即便出现乱码也可以通过另存为其他格式来调整消除乱码,同样的操作在copyFileByChar1方法拷贝生成的源文件是

java —— 字符流

字符流的继承类图 主要字符流,它们有: Reader/Writer:字符流的基类,它们是抽象类. InputStreamReader/OutputStreamWriter:适配器类,输入是InputStream,输出是OutputStream,将字节流转换为字符流. FileReader/FileWriter:输入源和输出目标是文件的字符流. CharArrayReader/CharArrayWriter: 输入源和输出目标是char数组的字符流. StringReader/StringWrit

Java 字符流读写文件

据说,java读写文件要写很多,贼麻烦,不像c艹,几行代码就搞定.只能抄抄模板拿来用了. 输入输出流分字节流和字符流.先看看字符流的操作,字节转化为字符也可读写. 一.写入文件 1.FileWriter类: FileWriter fw=new FileWriter("hello");//在workspace工作空间里创建文件,文件名为hello FileWriter fw=new FileWriter("E:\\hello");//在E盘创建文件,文件名为hello

java字符流读取文件

package ba; import java.io.*; public class zifuTest { public static void main(String[] args) { FileInputStream fis=null; InputStreamReader reader=null; File f=new File("G:/javakc.txt"); try { fis=new FileInputStream(f); reader=new InputStreamRea