package IoDemo;

import java.io.File;
import java.io.FileFilter;
import java.io.IOException;
import java.util.Arrays; /**
* @Title:IODemo
* @Description:File类的使用
* @author Crazy-ZJ
* @data 2017年9月21日下午2:31:10
* @book 疯狂java讲义(第三版):
*/
public class IODemo {
public static void main(String[] args){
//File类表示一个文件或目录
/**
* 三种分隔符:
* 1."F:/test/test.txt" \ 本身表示转义所以不能使用\ 只能使用/
* 2."F:\\test\\test.txt" 如果非得要使用\ 就必须使用两个\即 \\ 这样才能表示一个\
* 3."F:"+File.separator+"test"+File.separator+"test.txt" 与系统相关的默认名称 - 分隔符字符,以方便的方式表示为字符串。
*/
File f1 = new File("F:"+File.separator+"test"+File.separator+"test.txt");
if(!f1.exists()){//判断文件是否存在,f1这个对象已经创建是存在的
try{
f1.createNewFile();//createNewFile() 创建新的文件
System.out.println("文件创建成功!");
} catch(IOException e){//基本上所有的文件流操作都会报IOException异常
e.printStackTrace();
}
}
//isFile() 判断是否为文件 isDirectory()判断是否为文件夹
System.out.println("是否为文件夹:"+f1.isDirectory()); File f2 = new File("F:\\test\\test");//要删除这个文件夹,必须先删除文件夹中的文件,否者删除失败
boolean b = f2.delete();
System.out.println(b); String[] names = f2.list();//列出当前目录下的所有文件名
System.out.println(Arrays.toString(names)); File[] fs=f2.listFiles();//列出当前目录下的所有文件,以file对象返回
for(File f : fs){
System.out.println("文件名称:"+f.getName());
System.out.println("文件长度:"+f.length());
System.out.println("相对路径:"+f.getPath());
System.out.println("绝对路径:"+f.getAbsolutePath()); } // System.out.println("--------------");
//查找特定文件
File f5 = new File("F:\\test\\test");
/* File[] files = f5.listFiles(new FileFilter(){
@Override
public boolean accept(File pathname){
return pathname.getName().endsWith(".txt");
}
});*/
File[] files = f5.listFiles((pathname) -> pathname.getName().endsWith(".txt"));//lambda 表达式写法
System.out.println("-------------");
for(File f:files){
System.out.println(f.getName());
}
}
}
  1. File类:表示文件和目录名的抽象表示形式
  2. File类可以实现文件的创建,删除,重命名,得到路径,创建时间等操作,是唯一与文件相关的操作类。详见Java API
  3. File类的操作方法

      1.public static final String separator     表示路径分隔符 "\"

      2.public File(String pathname)     构造File类实例,要传入路径

      3.public boolean createNewFile()  创建新的文件

      4.public boolean delete()          删除文件

       5.public boolean isDirectory()    判断给定的路径是否是文件夹

        6.public boolean isFile()      判断给定的路径是否是文件

      7.public  String list()         列出文件夹中的文件

      8.public File[] listFiles()      列出文件夹中的所有文件

      9.public boolean mkdir()      创建新的文件夹

      10.public boolean renameTo(File Test) 为文件重命名

      11.public ling length()        返回文件大小

      12public getPath()          路径名字符串

Java之File文件类的更多相关文章

  1. Java精选笔记_IO流【File(文件)类、遍历目录下的文件、删除文件及目录】

    File(文件)类 File类用于封装一个路径,该路径可以是从系统盘符开始的绝对路径,也可以是相对于当前目录而言的相对路径 File类内部封装的路径可以指向一个文件,也可以指向一个目录,在使用File ...

  2. File文件类

    目录 File文件类 File类的构造方法 File类的创建功能 File类的重命名 File类的删除功能 File类的判断功能 File类的获取功能 文件名称过滤器 File文件类 File:文件和 ...

  3. Java7 新特性 —— java.nio.file 文件操作

    本文部分摘自 On Java 8 自 Java7 开始,Java 终于简化了文件读写的基本操作,新增了 java.nio.file 库,通过与 Java8 新增的 stream 结合可以使得文件操作变 ...

  4. Java读写资源文件类Properties

    Java中读写资源文件最重要的类是Properties 1) 资源文件要求如下: 1.properties文件是一个文本文件 2.properties文件的语法有两种,一种是注释,一种属性配置.  注 ...

  5. IO概述、异常、File文件类_DAY19

    IO概述: 操作数据的工具 IO流,即数据流,数据像水流一样通过IO工具进行传输. 程序  <IO>   硬盘 绝对路径与相对路径 1:异常(理解) (1)就是程序的非正常情况. 异常相关 ...

  6. Java IO file文件的写入和读取及下载

    一.FileWriter 和BufferedWriter 结合写入文件 FileWriter是字符流写入字符到文件.默认情况下,它会使用新的内容代替文件原有的所有内容,但是,当指定一个true值作为F ...

  7. 系统学习 Java IO (三)----文件类 File

    目录:系统学习 Java IO---- 目录,概览 Java IO API 中的 File 类可以访问基础文件系统. 使用 File 类,可以: 检查文件或目录是否存在. 如果目录不存在,创建一个目录 ...

  8. java:file文件类

    public class FileDemo { public static File file; public static void main(String args[]) { String s = ...

  9. java中 File文件常用操作方法的汇总

    一.IO流: 1.全称为:Input Output---------输入输出流. 输入:将文件读到内存中. 输出:将文件从内存中输出到其他地方. 2.IO技术的作用: 主要是解决设备与设备之间的数据传 ...

随机推荐

  1. 仿Windows制作TreeView数据加载

    时间有限就直接贴源码吧,理解思路即可. 页面代码: <asp:TreeView ID="TreeViewLeft" runat="server" Show ...

  2. 九度OJ 1359:大魏树遍历 (树)

    时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:299 解决:29 题目描述: 大魏是JOBDU技术组里最喜欢折腾的一个了,单反.骑车.改九度页面,当然还有YY prado.我们姑且先把这些 ...

  3. 我的Android进阶之旅------>Android百度地图定位SDK功能学习

    因为项目需求,需要使用百度地图的定位功能,因此去百度地图开发平台下载了百度地图的Android定位SDK最新版本的开发包和示例代码学习. Android 定位SDK地址:http://develope ...

  4. Linux中的特殊字符

    单引号: 在单引号中所有的特殊字符都没有特殊含义 双引号: 在双引号中 $ ` \ 三个字符表示,调用变量的值.引用命令.转义,其他特殊字符均没有特殊含义 反引号: 用反引号括起来的内容被当作系统命令 ...

  5. 打开一个vue项目

    1.cmd打开命令行工具 2.cd定位到目录 3.(sudo) cnpm install安装((sudo)npm install -g cnpm --registry=http://registry. ...

  6. 集成富文本编辑器XSS预防过滤措施

    # https://github.com/phith0n/python-xss-filter import re import copy from html.parser import HTMLPar ...

  7. 前端 JavaScript&Dom

    JavaScript是一种属于网络的脚本语言,已经被广泛用于Web应用开发,常用来为网页添加各式各样的动态功能,为用户提供更流畅美观的浏览效果.通常JavaScript脚本是通过嵌入在HTML中来实现 ...

  8. PsySH——PHP交互式控制台

    PsySH PsySH is a runtime developer console, interactive debugger and REPL for PHP. PsySH是一个PHP的运行时开发 ...

  9. c# 虚方法(virtual)与 多态(Polymorphism)

    using System; using System.Collections.Generic; using System.Linq; using System.Text; //虚方法(virtual) ...

  10. OS X 与传统Unix的一点区别

    在传统的Unix系统或者Linux系统中,你是很难在根目录下找到大写开头的文件夹的, 但是看一下OS X: ls / Applications Users etc private var Develo ...