文件I/O操作的相关概念

一 点睛

数据流可视为流动数据序列。

当Java需要读数据时,就会开启一个通向数据源的流,这个数据源可以是文件、内存,也可以是网络连接。而当Java程序需要写入数据时,也会开启一个通向目的地的流。流为操作物理设备提供了一致的接口。通过打开流操作关联到文件,通过关闭流操作解除和文件之间的关联。

流通常有两种形式:文本流和二进制流。

文本流每一个字节存放一个ASCII码,代表一个字符。

二进制流也称字节流,它是把数据按其内存中存储的字节形式原封不动地输出或存储。

一般来说,对于纯文本信息(比如字符串),以文本流形式存储较好,而对于数值信息,则用二进制流形式较好。

Java能正常处理UNIX和Windows约定路径分隔符。如果在Windows版本的Java下用斜线(/),路径处理依然正确。如果要在Windows操作系统下使用反斜线(\)来做路径分割符,则需要在字符串内使用它的转义序列(两个反斜线"\\")。Java约定的是UNIX和URL风格的斜线“/”来做路径分隔符。

二 File类实战

1 代码

import java.io.File;
import java.util.Date;

public class FileDemo {
    public static void main( String[] args ) {
        File f = new File("D:" + File.separator + "1.txt");
        if (f.exists() == false) {
            try {
                f.createNewFile();
            } catch (Exception e) {
                System.out.println(e.getMessage());
            }
        }
        // getName()方法,取得文件名
        System.out.println("文件名:" + f.getName());
        // getPath()方法,取得文件路径
        System.out.println("文件路径:" + f.getPath());
        // getAbsolutePath()方法,得到绝对路径名
        System.out.println("绝对路径:" + f.getAbsolutePath());
        // getParent()方法,得到父文件夹名
        System.out.println("父文件夹名称:" + f.getParent());
        // exists(),判断文件是否存在
        System.out.println(f.exists() ? "文件存在" : "文件不存在");
        // canWrite(),判断文件是否可写
        System.out.println(f.canWrite() ? "文件可写" : "文件不可写");
        // canRead(),判断文件是否可读
        System.out.println(f.canRead() ? "文件可读" : "文件不可读");
        // / isDirectory(),判断是否是目录
        System.out.println(f.isDirectory() ? "是" : "不是" + "目录");
        // isFile(),判断是否是文件
        System.out.println(f.isFile() ? "是文件" : "不是文件");
        // isAbsolute(),是否是绝对路径名称
        System.out.println(f.isAbsolute() ? "是绝对路径" : "不是绝对路径");
        // lastModified(),文件最后的修改时间
        // returns the time file was last modified
        long millisec = f.lastModified();

        // date and time
        Date dt = new Date(millisec);
        System.out.println("文件最后修改时间:" + dt);
        // length(),文件的长度
        System.out.println("文件大小:" + f.length() + " Bytes");
    }
}

2 运行

文件名:1.txt
文件路径:D:\1.txt
绝对路径:D:\1.txt
父文件夹名称:D:\
文件存在
文件可写
文件可读
不是目录
是文件
是绝对路径
文件最后修改时间:Fri Jul 19 21:52:02 CST 2019
文件大小:0 Bytes

3 说明

File类只能对文件进行一些简单操作,如读取文件的属性、创建、删除和更名等,不支持文件内容的读写。如果想达到对文件读写操作的目的,就必须通过输入/输出流。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值