黑马程序员_75_IO流

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

IO流

我的印象

IO流是来操作数据的
常见分类为字节流和字符流
即InputStream和OutputStream
Writer和Reader

字符流是指操作文本数据的流
字节流是还可以操作图片等等的流

本例演示

本例演示文件操作字符流
java操作文件就必须考虑跨平台性.
查阅API可以得到File类的常用字段
static String pathSeparator
与系统有关的路径分隔符,为了方便,它被表示为一个字符串。 Windows下的”;”
static char pathSeparatorChar
与系统有关的路径分隔符。 Windows下的”;”
static String separator
与系统有关的默认名称分隔符,为了方便,它被表示为一个字符串。 Windows下的”\”
static char separatorChar
与系统有关的默认名称分隔符。 Windows下的”\”

File的构造函数。
File(String pathname)
通过将给定路径名字符串转换为抽象路径名来创建一个新 File 实例。
本例暂时只演示File(String pathname)

Writer抽象类
本例暂时不考虑多线程,所以不考虑加锁
构造函数
protected Writer()
创建一个新的字符流 writer,其关键部分将同步 writer 自身。
方法
Writer append(char c)
将指定字符添加到此 writer。
abstract void close()
关闭此流,但要先刷新它。
abstract void flush()
刷新该流的缓冲。
void write(char[] cbuf)
写入字符数组。
abstract void write(char[] cbuf, int off, int len)
写入字符数组的某一部分。
void write(int c)
写入单个字符。
void write(String str)
写入字符串。
void write(String str, int off, int len)
写入字符串的某一部分。

由于Writer是抽象类,不能被实例化
所以找到它的子类FileWriter
构造函数
FileWriter(File file)
根据给定的 File 对象构造一个 FileWriter 对象。
FileWriter(File file, boolean append)
根据给定的 File 对象构造一个 FileWriter 对象。
FileWriter(String fileName)
根据给定的文件名构造一个 FileWriter 对象。
FileWriter(String fileName, boolean append)
根据给定的文件名以及指示是否附加写入数据的 boolean 值来构造 FileWriter 对象。

演示

需求:在硬盘上,创建一个文件并写入一些文字数据。

import java.io.*;
class FileWriterDemo 
{
    public static void main(String[] args) 
    {
        FileWriter fw = null;
        try
        {
            //创建一个FileWriter对象,并明确流的目的文件
             //fw = new FileWriter("File.txt");
             //传递一个true参数,代表不覆盖已有的文件。并在已有文件的末尾处进行数据续写。
             fw = new FileWriter(new File("H:"+File.separator+"file2.txt"),true);

            //在流中写入数据
            fw.write("Hello java\r\n");

            //刷新流的缓冲
            fw.flush();
        }
        catch (IOException ioe)
        {
            System.out.println(ioe.toString());
        }
        finally
        {
            try
            {
                //关闭流,在关闭前会进行一次刷新操作
                if(fw!=null)
                    fw.close();
            }
            catch (IOException e)
            {
                System.out.println(e.toString());
            }

        }
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值