/**
 * @Title:JavaFile.java
 * @Package:com.yhd.chart.model
 * @Description:File类测试
 * @author:Youhaidong(游海东)
 * @date:2014-1-18 下午7:51:39
 * @version V1.0
 */
package com.yhd.chart.model;

import java.io.File;
import java.io.IOException;
import java.net.URI;
import java.net.URL;

/**
 * 类功能说明
 * 类修改者 修改日期
 * 修改说明
 * <p>Title:JavaFile.java</p>
 * <p>Description:游海东个人开发</p>
 * <p>Copyright:Copyright(c)2013</p>
 * @author:游海东
 * @date:2014-1-18 下午7:51:39
 * @version V1.0
 */
public class JavaFile {

	/**
	 * @throws IOException
	 * @Title:main
	 * @Description: File类
	 * @param:@param args
	 * @return: void
	 * @throws
	 */
	@SuppressWarnings("deprecation")
	public static void main(String[] args) throws IOException
	{
		/**创建一个file对象**/
		File file = new File("简历.txt");

		/**
		 * 1、返回由此抽象路径名表示的文件或目录的名称;
		 * 2、该名称是路径名的名称序列中的最后一个名称;
		 * 3、如果路径名的名称序列为空,则返回空字符串。
		 */
		String fileName = file.getName();
		System.out.println("文件名称:" + fileName);

		/**
		 * 1、返回此抽象路径名的父路径名的路径名字符串;
		 * 2、如果此路径名没有指定父目录,则返回 null;
		 * 3、抽象路径名的父 路径名由路径名的前缀(如果有)
		 * 以及路径名的名称序列中最后一个名称以外的所有名称组成。
		 */
		String parentName = file.getParent();
		System.out.println("父路径名:" + parentName);

		/**
		 * 1、返回此抽象路径名的父路径名的抽象路径名;
		 * 2、如果此路径名没有指定父目录,则返回 null;
		 * 3、抽象路径名的父 路径名由路径名的前缀(如果有)
		 * 以及路径名的名称序列中最后一个名称以外的所有名称组成;
		 * 4、如果名称序列为空,那么该路径名没有指定父目录。
		 */
		File parentFileName = file.getParentFile();
		System.out.println("父路径名的抽象路径名:" + parentFileName);

		/**
		 * 1、将此抽象路径名转换为一个路径名字符串;
		 * 2、所得到的字符串使用默认名称分隔符来分隔名称序列中的名称。
		 */
		String pathName = file.getPath();
		System.out.println("抽象路径名:" + pathName);

		/**
		 * 1、测试此抽象路径名是否为绝对路径名;
		 * 2、绝对路径名的定义与系统有关;
		 * 3、如果此抽象路径名是绝对路径名,则返回 true;否则返回 false。
		 */
		boolean isAbsolute = file.isAbsolute();
		System.out.println("测试此抽象路径名是否为绝对路径名:" + isAbsolute);

		/**
		 * 1、返回抽象路径名的绝对路径名字符串;
		 * 2、如果此抽象路径名已经是绝对路径名,则返回该路径名字符串。
		 */
		String absolutePath = file.getAbsolutePath();
		System.out.println("绝对路径名:" + absolutePath);

		/**
		 * 1、返回抽象路径名的绝对路径名形式;
		 * 2、等同于 new File(this.getAbsolutePath()());
		 * 3、返回:表示与此抽象路径名相同的文件或目录的绝对抽象路径名 ;
		 * 4、抛出:SecurityException - 如果无法访问所需的系统属性值。
		 */
		File absoluteFile = file.getAbsoluteFile();
		System.out.println("抽象路径名的绝对路径名形式:" + absoluteFile);

		/**
		 * 1、返回抽象路径名的规范路径名字符串;
		 * 2、规范路径名是绝对路径名,并且是惟一的;
		 * 3、返回:表示与此抽象路径名相同的文件或目录的规范路径名字符串 ;
		 * 4、抛出:IOException - 如果发生 I/O 错误(可能是因为构造规范路径名需要进行文件系统查询)。
		 */
		String canonicalPath = file.getCanonicalPath();
		System.out.println("规范路径名:" + canonicalPath);

		/**
		 * 1、返回此抽象路径名的规范形式;
		 * 2、等同于 new File(this.getCanonicalPath()());
		 * 3、返回:表示与此抽象路径名相同的文件或目录的规范路径名字符串 ;
		 * 4、抛出:IOException - 如果发生 I/O 错误(可能是因为构造规范路径名需要进行文件系统查询)。
		 */
		File canonicalFile = file.getCanonicalFile();
		System.out.println("抽象路径名的规范形式:" + canonicalFile);

		/**
		 * 1、将此抽象路径名转换成一个 file:URL;
		 * 2、该 URL 的具体形式与系统有关;
		 * 3、返回:表示等效文件 URL的 URL对象 ;
		 * 4、抛出:MalformedURLException - 如果无法将路径分析为 URL。
		 */
		URL toUrl = file.toURL();
		System.out.println("URL:" + toUrl);

		/**
		 * 1、构造一个表示此抽象路径名的 file: URI;
		 * 2、该 URI的具体形式与系统有关;
		 * 3、返回:一个绝对的分层 URI,由一个等于 "file"
		 *  的 scheme、非空的 path 组件,以及未定义的 authority、
		 *  query 和 fragment 组件组成。
		 */
		URI toUri = file.toURI();
		System.out.println("URI:" + toUri);

		/**
		 * 1、测试应用程序是否可以读取此抽象路径名表示的文件;
		 * 2、返回:当且仅当此抽象路径名指定的文件存在且 可由
		 *        应用程序读取时,返回 true;否则返回 false ;
		 * 3、抛出:SecurityException - 如果存在安全管理器,
		 *        且其 SecurityManager.checkRead(java.lang.String)
		 *        方法拒绝对文件进行读取访问。
		 */
		boolean canRead = file.canRead();
		System.out.println("读取此抽象路径名:" + canRead);

		/**
		 * 1、测试应用程序是否可以修改此抽象路径名表示的文件;
		 * 2、返回:当且仅当文件系统实际包含此抽象路径名表示
		 *        的文件且 允许应用程序对该文件进行写入时,
		 *        返回 true,否则返回 false;
		 * 3、抛出:SecurityException - 如果存在安全管理器,
		 *        且其 SecurityManager.checkWrite(java.lang.String)
		 *        方法拒绝对文件进行写入访问。
		 */
		boolean canWrite = file.canWrite();
		System.out.println("修改此抽象路径名:" + canWrite);

	}

}

返回结果:

文件名称:简历.txt
父路径名:null
父路径名的抽象路径名:null
抽象路径名:简历.txt
测试此抽象路径名是否为绝对路径名:false
绝对路径名:D:\MyEclipse\workspace\ColumnChart\简历.txt
抽象路径名的绝对路径名形式:D:\MyEclipse\workspace\ColumnChart\简历.txt
规范路径名:D:\MyEclipse\workspace\ColumnChart\简历.txt
抽象路径名的规范形式:D:\MyEclipse\workspace\ColumnChart\简历.txt
URL:file:/D:/MyEclipse/workspace/ColumnChart/简历.txt
URI:file:/D:/MyEclipse/workspace/ColumnChart/简历.txt
读取此抽象路径名:false
修改此抽象路径名:false

Java中File类总结的更多相关文章

  1. java中File类的常用方法总结

    java中File类的常用方法 创建: createNewFile()在指定的路径创建一个空文件,成功返回true,如果已经存在就不创建,然后返回false. mkdir() 在指定的位置创建一个此抽 ...

  2. Java 中File类的createNewFile()与createTempFile(), delete和deleteOnExit区别

    1. Java 中File类的createNewFile()与createTempFile()的区别 最近,在看代码时看到了一个方法, File.createTempFile() ,由此联想到File ...

  3. Java中File类的基本用法

    File类的基本用法 java.io.File类:代表文件和目录.在开发中,读取文件.生成文件.删除文件.修改文件的属性时经常会用到此类. File类的常用构造方法:public File(Strin ...

  4. java中File类的使用

    public class FileLei {    public static void main(String[] args) throws IOException {        //..表示上 ...

  5. java中File类的相关学习

    File类 1.关于系统路径分割符. 在Windows中,使用反斜杠“\”作为路径分割符,比如“c:\test”,但是java中反斜杠表示转义,所以需要用“C:\\test”在程序中来表示路径.还可以 ...

  6. java中File类的常用所有方法及其应用

    创建:createNewFile()在指定位置创建一个空文件,成功就返回true,如果已存在就不创建,然后返回false.mkdir()  在指定位置创建一个单级文件夹.mkdirs()  在指定位置 ...

  7. java中File类中list()和listFiles()方法区别

    list()和listFiles()方法区别: 1.返回值类型不同:前者为String数组,后者为File对象数组 2.数组中元素内容不同:前者为string类型的[文件名](包含后缀名),后者为Fi ...

  8. Java中File类的方法详解

    File类也是Java中一个比较重要的类,通过他我们可以实现对文件的一系列操作,其内置了很多方法,下面我将按方法的功能分块,逐一讲解: 快速导航 构造方法 常用方法 创建目录 判断 `is...` t ...

  9. java中File类应用:遍历文件夹下所有文件

    练习: 要求指定文件夹下的所有文件,包括子文件夹下的文件 代码: package 遍历文件夹所有文件; import java.io.File; public class Test { public ...

随机推荐

  1. [DeeplearningAI笔记]02_3.1-3.2超参数搜索技巧与对数标尺

    Hyperparameter search 超参数搜索 觉得有用的话,欢迎一起讨论相互学习~Follow Me 3.1 调试处理 需要调节的参数 级别一:\(\alpha\)学习率是最重要的需要调节的 ...

  2. tensorflow Image 解码函数

    觉得有用的话,欢迎一起讨论相互学习~Follow Me tf.image.decode_png(contents, channels=None, name=None) Decode a PNG-enc ...

  3. 接口中定义变量必须为public static final的原因

    在interface里面的变量默认都是public static final 的,原因如下: 1.   接口是一种高度抽象的"模版",,而接口中的属性也就是’模版’的成员,就应当是 ...

  4. 用ASOS建立自定义的OpenID 服务(一)-----------简介

    翻译文章 原文地址 这一系列共包括9个部分,这是第一部分,下面是英文原文地址: Introduction Choosing the right flow(s) Registering the midd ...

  5. es数据恢复杂记

    kill -9或者断电等原因异常,es在重启后,会通过translog来进行数据恢复. 默认的恢复速度是较慢的,可以设置indices.recovery.current_streams:10增大恢复的 ...

  6. JDBC为什么要使用PreparedStatement而不是Statement

    PreparedStatement是什么? PreparedStatement是java.sql包下面的一个接口,用来执行SQL语句查询,通过调用connection.preparedStatemen ...

  7. (python功能定制)复杂的xml文件对比,产生HTML展示区别

    功能的设计初衷: 处理复杂的xml对比,屏蔽同节点先后顺序的影响 主要涉及知识点: 1.xml解析 ------- ElementTree库 2.文件比对差别 ------- difflib库 3.获 ...

  8. 二维码开源库ZBar-实现中文解码

    中文乱码 上篇<ZBar-windows下编译和使用>已经成功解析了条形码,但目标是二维码,经测试二维码中文会出现乱码.下图二维码的内容是"http123测试456", ...

  9. JS原型学习之旅(一)之一图了解原型链关系

    目前正在学JS的原型思想(准确的说是从昨天2018.1.29开始正式接触),琢磨了两天,在chrome的console不停的敲了好多代码测试__proto__和prototype的关系,有了些小收获( ...

  10. xml对象序列化

    public static class XSerializer { /// <summary> /// 将对象序列化为xml字符串 /// </summary> /// < ...