File 类:

  1. java.io.File 类代表系统文件名(路径名、文件名);

  2. File 类常见的构造方法:

    2.1. File(String pathname):通过将给定路径名字符串转换为抽象路径名来创建一个新 File 实例;

2.2. File(String parent, String child):根据 parent 路径名字符串和 child 路径名字符串创建一个新File实例;

  3. public static final String separator:与系统有关的默认名称分隔符,为了方便,它被表示为一个字符串。此字符串只包含一个字符,即 separatorChar

【注】:Linux只认识/ , Windows 认识\ , 也认识/   (Separator 分隔符)

File 类常用方法:

  1. 通过 File 对象可以访问文件的属性:

    public boolean canRead() // 测试应用程序是否可以读取此抽象路径名表示的文件

public boolean canWrite() // 测试应用程序是否可以修改此抽象路径名表示的文件

public boolean exists() // 测试此抽象路径名表示的文件或目录是否存在

    public boolean isDirectory() // 测试此抽象路径名表示的文件是否是一个目录

public boolean isFile() // 测试此抽象路径名表示的文件是否是一个标准文件

 public boolean isHidden() // 测试此抽象路径名指定的文件是否是一个隐藏文件

    public long lastModified() // 返回此抽象路径名表示的文件最后一次被修改的时间

    public long length() // 返回由此抽象路径名表示的文件的长度

   2. 通过 File 对象创建空文件或目录(在该对象所指的文件或目录不存在的情况下)

    public boolean createNewFile() throws IOException // 当且仅当不存在具有此抽象路径名指定名称的文件时,不可分地创建一个新的空文件

    public boolean delete() // 删除此抽象路径名表示的文件或目录

    public boolean mkdir() // 创建此抽象路径名指定的一个父目录

    public boolean mkdirs() // 创建此抽象路径名指定的目录,包括所有必需但不存在的父目录

    public File[] listFiles() // 返回一个抽象路径名数组,这些路径名表示此抽象路径名表示的目录中的文件

   3. Demo 举例

Demo_1

import java.io.*;
public class Test {
public static void main(String[] args) {
String separator = File.separator; // 或者直接使用/表示,这样在Linux、Windows中都认识
String filename = "myfile.txt";
String directory = "E:"+separator+"JAVA"+separator; // 或者directory="E:/JAVA";
File f = new File(directory,filename);
if(f.exists()){
System.out.println("文件名:"+f.getName());
System.out.println("文件大小:"+f.length());
}else{
f.getParentFile().mkdir();
try {
f.createNewFile();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}

运行结果:

文件名:myfile.txt
文件大小:1142

Demo_2

import java.io.*;
public class Test {
public static void main(String[] args) {
String separator = File.separator; // 或者直接使用/表示,这样在Linux、Windows中都认识
String filename = "myfile.txt";
String directory = "E:/Hello/IO/"; // 或者directory="E:/JAVA";
File f = new File(directory,filename);
if(f.exists()){
System.out.println("文件名:"+f.getName());
System.out.println("文件大小:"+f.length());
}else{
System.out.println("文件不存在...请创建");
f.getParentFile().mkdirs();
System.out.println("正在创建中,请稍后....");
try {
System.out.println("目录创建成功");
f.createNewFile();
System.out.println("文件创建成功");
} catch (IOException e) {
e.getStackTrace();
}
}
}
}

运行结果:

文件不存在...请创建
正在创建中,请稍后....
目录创建成功
文件创建成功

Java常用类之File类的更多相关文章

  1. java之io之file类的常用操作

    java io 中,file类是必须掌握的.它的常用api用法见实例. package com.westward.io; import java.io.File; import java.io.IOE ...

  2. java IO(一):File类

    */ .hljs { display: block; overflow-x: auto; padding: 0.5em; color: #333; background: #f8f8f8; } .hl ...

  3. Java IO体系之File类浅析

    Java IO体系之File类浅析 一.File类介绍 位于java.io下的Java File类以抽象的方式代表文件名和目录路径名.该类主要用于文件和目录的创建.文件的查找和文件的删除等.File对 ...

  4. Java常用的加密解密类(对称加密类)

    Java常用的加密解密类 原文转载至:http://blog.csdn.net/wyc_cs/article/details/8793198 原创 2013年04月12日 14:33:35 1704 ...

  5. JavaSE常用类之File类

    File类 只用于表示文件或目录的信息,不能对文件内容进行访问. java.io.File类∶代表文件和目录.在开发中,读取文件.生成文件.删除文件.修改文件的属性时经常会用到本类. File类不能访 ...

  6. -1-4 java io java流 常用流 分类 File类 文件 字节流 字符流 缓冲流 内存操作流 合并序列流

      File类 •文件和目录路径名的抽象表示形式 构造方法 •public File(String pathname) •public File(String parent,Stringchild) ...

  7. 【Java IO流】File类的使用

    File类的使用 Java中的File类是在java.io.File中,Java.IO.File类表示文件或目录. File类只用于表示文件(目录)的信息(名称.大小等),不能用于文件内容的访问. 一 ...

  8. Java基础---IO(二)--File类、Properties类、打印流、序列流(合并流)

    第一讲     File类 一.概述 1.File类:文件和目录路径名的抽象表现形式 2.特点: 1)用来将文件或文件夹封装成对象 2)方便于对文件与文件夹的属性信息进行操作 3)File类的实例是不 ...

  9. Java自学-I/O File类

    Java 的File类,以及常用方法 文件和文件夹都是用File代表 步骤 1 : 创建一个文件对象 使用绝对路径或者相对路径创建File对象 package file; import java.io ...

随机推荐

  1. 【Spark】源码分析之spark-submit

    在客户端执行脚本sbin/spark-submit的时候,通过cat命令查看源码可以看出,实际上在源码中将会执行bin/spark-class org.apache.spark.deploy.Spar ...

  2. window server IIS组建方法

    文章来自:二度云IIS(Internet Information Server,互联网信息服务)是一种Web(网页)服务组件,其中包括Web服务器.FTP服务器.NNTP服务器和SMTP服务器,分别用 ...

  3. mysql 主主架构,多入口 互为备份

    ,中小企业很多都是使用mysql主从方案,一主多从,读写分离等,但是单主存在单点故障,从库切换成主库需要作改动.因此,如果是双主或者多主,就会增加mysql入口,增加高可用.不过多主需要考虑自增长ID ...

  4. 如何在 EXCEL 2003 插入的方框内打对勾,复选框

    一个方框里带勾的符号是吧第一种:EXCEL里有个插入符号的功能知道吧,打开它在符号那栏(不是特殊符号那栏),下拉字体找到Wingdings字体,在下面的符号中就能找到框中带勾的符号 第二种:在界面点& ...

  5. 【C】数据类型和打印(print)

    char -128 ~ 127 (1 Byte) unsigned char 0 ~ 255 (1 Byte) short -32768 ~  32767 (2 Bytes) unsigned sho ...

  6. Python学习知识库

    2017年10月16日 1. too broad exception clause 捕获的异常过于宽泛了,没有针对性,应该指定精确的异常类型场景: def check_data_type(column ...

  7. Git Status 中文乱码解决

    现象: jb@H39:~/doc$ git statusOn branch masterYour branch is up-to-date with 'origin/master'. Untracke ...

  8. 讯飞SDK的使用

    在配置好Android Studio 2.3.3后,依照结合网上例子,动手创建讯飞语言听写app,最终手机上运行成功. 主要参考两篇博文(zqHero/XunFeiVoiceDEmo ,Android ...

  9. LeetCode: 62. Unique Paths(Medium)

    1. 原题链接 https://leetcode.com/problems/unique-paths/description/ 2. 题目要求 给定一个m*n的棋盘,从左上角的格子开始移动,每次只能向 ...

  10. androd hook acitivity 启动流程,替换启动的activity(Android Instrumentation)

    前言:如果程序想要知道有activity启动,如果想要拦截activity,然后跳转到指定的activity怎么办? 我们看下ActivityThread 里面: private Activity p ...