/**
 * @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. 【COOKIE 与 SESSION】

    一.相关概念 cookie的出现,解决http协议无状态特性 由于http协议无法保持状态,但实际情况,我们却又需要"保持状态",因此cookie就是在这样一个场景下诞生. 举例: ...

  2. float 的不确定性

    很多时候,大家都知道,浮点型这个东西,本身存储就是一个不确定的数值,你永远无法知道,它是 0 = 0.00000000000000123 还是 0 = 0.00000000000999这样的东西.也许 ...

  3. html5的video标签自动播放

    概念澄清 这里的"自动播放",是指用户的视觉效果,并不一定是元素自身的自动播放. 查看相关文档后,有以下两种最简方案. 配置属性 发现有video标签有一个自动播放的属性autop ...

  4. Linux tail,cat,head命令

    tail命令用于将文件的最后部分输出到标准设备,通常是终端,也可以支持更新操作,当文档内容发生变化时,tail会自己主动刷新,确保你看到最新的档案内容. 1.tail -f filename 监视fi ...

  5. bzoj 4869: [Shoi2017]相逢是问候 [扩展欧拉定理 线段树]

    4869: [Shoi2017]相逢是问候 题意:一个序列,支持区间\(a_i \leftarrow c^{a_i}\),区间求和.在模p意义下. 类似于开根操作,每次取phi在log次后就不变了. ...

  6. (python基础)时间辍time、时间元组localtime、时间格式化strftime

    可以直接将下方代码运行查看结果:#!/usr/bin/python# coding=utf-8import time # 引入time模块# 时间戳:# 每个时间戳都以自从1970年1月1日午夜(历元 ...

  7. xml对象序列化

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

  8. 分布式服务dubbo使用

    SOA 服务框架dubbo 节点角色说明: Provider: 暴露服务的服务提供方. Consumer: 调用远程服务的服务消费方. Registry: 服务注册与发现的注册中心. Monitor: ...

  9. elk安装配置

    ELK介绍   官网https://www.elastic.co/cn/ 中文指南https://www.gitbook.com/book/chenryn/elk-stack-guide-cn/det ...

  10. 深入分析Java ClassLoader的原理(转)

    一.什么是ClassLoader? 大家都知道,当我们写好一个Java程序之后,不是管是CS还是BS应用,都是由若干个.class文件组织而成的一个完整的Java应用程序,当程序在运行时,即会调用该程 ...