/**
 * @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. Sql Server的艺术(三) SQL聚合函数的应用

    SQL提供的聚合函数有求和,最大值,最小值,平均值,计数函数等. 聚合函数及其功能: 函数名称 函数功能 SUM() 返回选取结果集中所有值的总和 MAX() 返回选取结果集中所有值的最大值 MIN( ...

  2. xBIM 格式之间转换

    目录 xBIM 应用与学习 (一) xBIM 应用与学习 (二) xBIM 基本的模型操作 xBIM 日志操作 XBIM 3D 墙壁案例 xBIM 格式之间转换 xBIM 使用Linq 来优化查询 x ...

  3. SPOJ 1811 LCS [后缀自动机]

    题意: 求两个串的最大连续子串 一个串建SAM,另一个串在上面跑 注意如果走了Suffix Link,sum需要更新为t[u].val+1 Suffix Link有点像失配吧,当前状态s走不了了就到S ...

  4. React ref回调函数例子

    ref属性也可以是一个回调函数而不是一个名字.   这个函数将要在组件被挂载之后立即执行. 这个参照的组件将会作为该函数的参数,这个函数可以立即使用这个组件参数,当然也可以将其保存供以后使用. 当这个 ...

  5. Microsoft Visual Studio 中出现 Windows has triggered a breakpoint in xxx.exe的一个解决方案

    今天在用VS发布Release版本的过程中,碰到了一个问题,就是程序编译没有问题,但是在运行过程中出现了 根据经验,此类问题一般都是由于程序开发过程中的代码编写不规范导致内存写覆盖或者是使用了不同版本 ...

  6. TensorFlow实战之Softmax Regression识别手写数字

         关于本文说明,本人原博客地址位于http://blog.csdn.net/qq_37608890,本文来自笔者于2018年02月21日 23:10:04所撰写内容(http://blog.c ...

  7. 针对Eclipse的maven Missing artifact com.microsoft.sqlserver:slqjdbc4:jar:4.0

    maven 中添加sqlserver 出错,报错内容 maven Missing artifact com.microsoft.sqlserver 解决方法这里先下载好jar包 ,然后maven命令执 ...

  8. 初识vps,域名与购买,初步配置

    终于还是到了这一天,不管我们是不是程序员,当我们想拥有自己的一个的博客,当我们想有自己的一个空间,当我们想在网上有一个自己可以随心所欲编写任何不被限制的仅仅是酷炫的效果,当我们想收录自己的技术,经历, ...

  9. MacbookPro管理员问题

    更改用户名重启之后,发现用户名还是用户名,管理员权限降成了普通用户. 参考这个帖子改的用户名: https://zhidao.baidu.com/question/259845860.html 找回管 ...

  10. Postfix+dovecot搭建简单邮箱服务器

    实验环境: (1)修改主机名:hostnamectl set-hostname mail.meilintong.com 退出,重新登陆 (2)关闭selinux (3)关闭防火墙 1.安装postfi ...