【Java】IO流--文件字符流--FileReader、FileWriter

FileReader

作用:用于读取字符流

构造方法:

FileReader(File file)

创建一个新的 FileReader ,给出 File读取。

FileReader(String fileName)

创建一个新的 FileReader ,给定要读取的文件的名称。

常用方法:

1)int read();
2)int read(char[] cbuf)
3)int read(char[] cbuf,int off,int len);
4) int available();
5)close();

代码

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

public class TestFileReader {
    public static void main(String[] args) throws IOException {
        FileReader reader=null;
        //(1)搭桥
        reader=new FileReader("F://test.txt");

        //(2)读取
//        int b=reader.read();//读取到的字符的int类型数据
//        System.out.print((char)b);

//        int b=0;//用于存储每次读到的字符数据的整数值
//        while((b=reader.read())!=-1) {
//            System.out.print((char)b);
//        }

        int len=0;//储存读到的字符的个数数
        char[] cbuf=new char[1024];

        while((len=reader.read(cbuf))!=-1) {
            System.out.print(new String(cbuf, 0, len));
        }

        //(3)关闭
        reader.close();
    }
}

FileWriter

作用:用于写入字符流

构造方法:

FileWriter(File file)

给一个File对象构造一个FileWriter对象。给出一个带有布尔值的文件名,表示是否附加写入的数据。

FileWriter(File file, boolean append)

给一个File对象构造一个FileWriter对象

FileWriter(String fileName)

构造一个给定文件名的FileWriter对象。

FileWriter(String fileName, boolean append)

构造一个FileWriter对象,给出一个带有布尔值的文件名,表示是否附加写入的数据。

常用方法:

1)void write(int c);
2)void write(char[] cbuf);
3)abstract void write(char[] cbuf,int off,int len);
4)void write(String str);
5)abstract void flush();
6)void close();

代码

import java.io.FileWriter;
import java.io.IOException;

public class TestFileWriter {
    public static void main(String[] args) {
        //创建对象
        FileWriter writer=null;
        try {
            writer=new FileWriter("F://dest.txt");
            //写数据
            writer.write("Hello World!");//数据写到了缓冲区
            writer.flush();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }finally {
            try {
                if(writer!=null) {
                    //关闭
                    writer.close();
                }
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }

    }
}

原文地址:https://www.cnblogs.com/syxy/p/12267498.html

时间: 2024-10-10 12:52:23

【Java】IO流--文件字符流--FileReader、FileWriter的相关文章

JAVA IO 字节流与字符流

文章出自:听云博客 题主将以三个章节的篇幅来讲解JAVA IO的内容 . 第一节JAVA IO包的框架体系和源码分析,第二节,序列化反序列化和IO的设计模块,第三节异步IO. 本文是第一节.       IO框架 从上图我们可以看出IO可以分为两大块 字节流和字符流 字节流是 InputStream 和 OutputStream 分别对应输入与输出 字符流是Reader和Writer分别对应输入与输出        ByteArrayInputStream  它字节数组输入流.继承于InputS

Java IO 字节流与字符流 (三)

Java的IO流分为字符流(Reader,Writer)和字节流(InputStream,OutputStream),字节流顾名思义字节流就是将文件的内容读取到字节数组,然后再输出到另一个文件中.而字符流操作的最小单位则是字符.可以先看一下IO流的概述: 下面首先是通过字符流对文件进行读取和写入: 1 package lib; 2 3 import java.io.BufferedReader; 4 import java.io.File; 5 import java.io.FileNotFou

Java IO 字节流与字符流 (二)

概述 IO流用来处理设备之间的数据传输 Java对数据的操作时通过流的方式 Java用于操作流的对象都在IO包中 流按操作的数据分为:字节流和字符流 流按流向不同分为:输入流和输出流 IO流常用基类 字节流的抽象基类 InputStream,OuputStream 字符流的抽象基类 Reader,Writer 注: 这些基类的子类都是以基类的名称结尾的,如FileReader,FileInputStream 字节流 字节流:以字符为导向的流 简单介绍一个例子,演示字节流对图片的复制 1: imp

java io 学习之三 字符流的缓冲区

 /** 字符流的缓冲区 缓冲区的出现,提高了对数据的读写效率 对应的类: BufferedWriter BufferedReader 缓冲区要结合流才可以使用 缓冲区是在流的基础上对流的功能进行增强 软件的优化可以分为:设计优化和性能优化 设计优化:对代码进行重构,让代码实现更强的可扩展性和灵活性,复用性. 提高性能最常用的的手段是:缓冲区  线程池 BufferedWriter 构造方法摘要 BufferedWriter(Writer out) 创建一个使用默认大小输出缓冲区的缓冲字符输

java.io 字节流与字符流及简单实例

java io是java中非常基础的知识点,对于通信和不涉及到数据库的项目java io应该是要经常使用.java io分为字节流和字符流,分清字节流和字符流的异同是掌握java io的起点. 字节流,最小单位是字节,通信协议中的X-MODEM和Y-MODEM协议传输单位就是字节流.java io中与字节流相关的主要类有:InputStream,OutputStream,FileInputStream,FileOutputStream.与字符流有关的主要类有:Writer,Reader,File

java IO(三):字符流

*/ .hljs { display: block; overflow-x: auto; padding: 0.5em; color: #333; background: #f8f8f8; } .hljs-comment, .hljs-template_comment, .diff .hljs-header, .hljs-javadoc { color: #998; font-style: italic; } .hljs-keyword, .css .rule .hljs-keyword, .h

Java——IO类,字符流读数据

body, table{font-family: 微软雅黑} table{border-collapse: collapse; border: solid gray; border-width: 2px 0 2px 0;} th{border: 1px solid gray; padding: 4px; background-color: #DDD;} td{border: 1px solid gray; padding: 4px;} tr:nth-child(2n){background-co

Java文件字节流和字符流FileInputStream,FileOutputStream,FileReader,FileWriter

一,文件输入流和文件输出流:FileInputStream,FileOutputStream FileInputStream可以使用read()方法一次读入一个字节,并以int类型返回,或者是使用read()方法时读入至一个byte数组,byte数组的元素有多少个,就读入多少个字节.在将整个文件读取完成或写入完毕的过程中,这么一个byte数组通常被当作缓冲区,因为这么一个byte数组通常扮演承接数据的中间角色. int read();int read(byte b[]);int read(byt

JAVA之旅(二十四)——I/O流,字符流,FileWriter,IOException,文件续写,FileReader,小练习

JAVA之旅(二十四)--I/O流,字符流,FileWriter,IOException,文件续写,FileReader,小练习 JAVA之旅林林总总也是写了二十多篇了,我们今天终于是接触到了I/O了.如果你初学,不懂IO流,你可以从前往后慢慢看,但是你工作了一段时间你会发现,流的使用场景以及技术点是非常的强硬的,我们势必要掌握这个知识点,如果你觉得翻阅API比较鼓噪,看视频得不到精髓,看书看不到要点,你就跟随我的JAVA之旅,一起去探索吧! 一.I/O概述 I/O全名:Input Output