/**
 * @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. C++复制、压缩文件夹

    之前写过一篇用zlib库来压缩的,但zlib只能压缩文件,我需要压缩文件夹,要想压缩文件夹还得利用zlib库自己写代码,我是真的服了,一个开源库这么不好用. C++复制文件夹也是麻烦事,网上这篇文章: ...

  2. HTML5之Notification简单使用

    var webNotification = { init: function() { if(!this.isSupport()) { console.log('不支持通知'); return; } t ...

  3. c#监测电脑状态

    public class DeviceMonitor { static readonly PerformanceCounter cpuCounter = new PerformanceCounter( ...

  4. phpstorm中配置真正的远程调试(xdebug)

    这里说的是真正的远程调试,不是本地,本地不需要安装任何php程序!!! 这里略去xdebug的安装,安装很简单可以下载源码包,动态编译进去! 环境: Dev 服务器(IP:192.168.2.100) ...

  5. elasticsearch的percolator操作

    es的普通查询是通过某些条件来查询满足的文档,percolator则不同,先是注册一些条件,然后查询一条文档是否满足其中的某些条件. es的percolator特性在数据分类.数据路由.事件监控和预警 ...

  6. UOJ #274. 【清华集训2016】温暖会指引我们前行 [lct]

    #274. [清华集训2016]温暖会指引我们前行 题意比较巧妙 裸lct维护最大生成树 #include <iostream> #include <cstdio> #incl ...

  7. Getting the pixel coordinates of text or ticks in matplotlib

    The exact pixel coordinates of title, labels, legends or ticks are important information for the tra ...

  8. MySQL学习记录(不断更新)

    MySQL设置数据集为UTF8仍无法输入中文的解决办法: 我们的机器默认为gbk,因此可在进入数据库之前,使用以下这条语句将默认编码改为gbk,注意没有单引号,也不要用分号. mysql -uroot ...

  9. Websocket原理及使用场景[转载]

    WebSocket的使用场景 社交聊天.弹幕.多玩家游戏.协同编辑.股票基金实时报价.体育实况更新.视频会议/聊天.基于位置的应用.在线教育.智能家居等需要高实时的场景 由轮询到WebSocket 1 ...

  10. String,StringBuffer,StringBuilder的区别

    数据结构: 数据结构是指相互之间存在一种或多种特定关系的数据元素的集合. 比如数据库就是对硬盘中的数据进行有规则的管理,可以进行增删改查工作,而良好的数据结构可以优化这些操作, 也许大家会想这些和St ...