您的位置:首页 > 编程语言 > Java开发

牛客网Java刷题知识点之File对象常用功能:获取文件名称、获取文件路径、获取文件大小、获取文件修改时间、创建与删除、判断、重命名、查看系统根目录、容量获取、获取某个目录下内容、过滤器

2017-09-23 12:21 1256 查看
  不多说,直接上干货!

[b]获取文件名称、获取文件路径、获取文件大小、获取文件修改时间[/b]



[b]FileMethodDemo.java[/b]

package zhouls.bigdata.DataFeatureSelection.test;

import java.io.File;
import java.io.IOException;
import java.text.DateFormat;
import java.util.Date;

public class FileMethodDemo {
/**
* @param args
* @throws IOException
*/
public static void main(String[] args) throws IOException {
/*
* File对象的常见方法。
* 1,获取。
*         1.1  获取文件名称。
*         1.2  获取文件路径。
*         1.3  获取文件大小。
*         1.4  获取文件修改时间。
*/
getDemo();

}

public static void getDemo(){//获取
//      File file = new File("D:\\Code\\eclipseMarsPaperCode\\DataFeatureSelection\\a.txt");//这是绝对路径。    File对象
     File file = new File("a.txt");//这是相对路径
String name = file.getName();//获取文件名称
String absPath = file.getAbsolutePath();//获取文件路径,是绝对路径。
String path = file.getPath();//获取文件路径,是相对路径。
long len = file.length();
long time = file.lastModified();//获取文件修改时间
Date date = new Date(time);
DateFormat dateFormat = DateFormat.getDateTimeInstance(DateFormat.LONG,DateFormat.LONG);
String str_time = dateFormat.format(date);
System.out.println("parent:"+file.getParent());
System.out.println("name:"+name);
System.out.println("absPath:"+absPath);
System.out.println("path:"+path);
System.out.println("len:"+len);
System.out.println("time:"+time);
System.out.println("str_time:"+str_time);
}
}


[b] 创建与删除[/b]

[b]FileMethodDemo.java[/b]

package zhouls.bigdata.DataFeatureSelection.test;

import java.io.File;
import java.io.IOException;
import java.text.DateFormat;
import java.util.Date;

public class FileMethodDemo{
/**
* @param args
* @throws IOException
*/
public static void main(String[] args) throws IOException {
/*
* File对象的常见方法。
* 创建与删除。
*/
createAndDeleteDemo();
}

public static void createAndDeleteDemo() throws IOException {
File dir = new File("D:\\Code\\eclipseMarsPaperCode\\DataFeatureSelection\\a.txt");
boolean b = dir.mkdir();//make directory
System.out.println("b="+b);
dir.mkdirs();//创建多级目录
System.out.println(dir.delete());

//文件的创建和删除。
File file = new File("file.txt");

/*
* 和输出流不一样,如果文件不存在,则创建,如果文件存在,则不创建。
*/
boolean b1 = file.createNewFile();
System.out.println("b1="+b1);

boolean b2 = file.delete();
System.out.println("b2="+b2);
}
}


[b] 判断[/b]

[b] FileMethodDemo.java[/b]

package zhouls.bigdata.DataFeatureSelection.test;

import java.io.File;
import java.io.IOException;
import java.text.DateFormat;
import java.util.Date;

public class FileMethodDemo {

/**
* @param args
* @throws IOException
*/
public static void main(String[] args) throws IOException {
/*
* File对象的常见方法。
* 判断。
*/
isDemo();
}

public static void isDemo() throws IOException{
File f = new File("D:\\Code\\eclipseMarsPaperCode\\DataFeatureSelection\\a.txt");
f.mkdir();
f.createNewFile();

boolean b = f.exists();
System.out.println("b="+b);
// 最好先判断是否存在。
System.out.println(f.isFile());
System.out.println(f.isDirectory());
}
}


[b]重命名[/b]

[b] FileMethodDemo.java[/b]

package zhouls.bigdata.DataFeatureSelection.test;

import java.io.File;
import java.io.IOException;
import java.text.DateFormat;
import java.util.Date;

public class FileMethodDemo {
/**
* @param args
* @throws IOException
*/
public static void main(String[] args) throws IOException {
/*
* File对象的常见方法。
* 4, 重命名
*/
renameToDemo();

}

public static void renameToDemo() {
File f1 = new File("D:\\Code\\eclipseMarsPaperCode\\DataFeatureSelection\\a.txt");
File f2 = new File("D:\\Code\\eclipseMarsPaperCode\\DataFeatureSelection\\b.txt");
boolean b = f1.renameTo(f2);
System.out.println("b="+b);
}
}


[b]系统根目录[/b]





[b] FileMethodDemo.java[/b]

package zhouls.bigdata.DataFeatureSelection.test;

import java.io.File;
import java.io.IOException;
import java.text.DateFormat;
import java.util.Date;

public class FileMethodDemo {
/**
* @param args
* @throws IOException
*/
public static void main(String[] args) throws IOException {
/*
* File对象的常见方法。
* 系统根目录
*/
listRootsDemo();
}

public static void listRootsDemo() {
File[] files  = File.listRoots();
for(File file : files){
System.out.println(file);
}
}
}


[b] 容量获取[/b]



[b] FileMethodDemo.java[/b]

package zhouls.bigdata.DataFeatureSelection.test;

import java.io.File;
import java.io.IOException;
import java.text.DateFormat;
import java.util.Date;

public class FileMethodDemo {
/**
* @param args
* @throws IOException
*/
public static void main(String[] args) throws IOException {
/*
* File对象的常见方法。
* 系统根目录和容量获取
*/
listRootsDemo();
}

public static void listRootsDemo() {
File file = new File("D:\\");
System.out.println("getFreeSpace:"+file.getFreeSpace());
System.out.println("getTotalSpace:"+file.getTotalSpace());
System.out.println("getUsableSpace:"+file.getUsableSpace());
}
}


[b]获取目录内容[/b]



[b] FileListDemo.java[/b]

package zhouls.bigdata.DataFeatureSelection.test;

import java.io.File;

public class FileListDemo {
/**
* @param args
*/
public static void main(String[] args) {
listDemo();
}

public static void listDemo() {
File file = new File("D:\\");
/*
* 获取当前目录下的文件以及文件夹的名称,包含隐藏文件。
* 调用list方法的File对象中封装的必须是目录。
* 否则会发生NullPointerException
* 如果访问的系统级目录也会发生空指针异常。
* 如果目录存在但是没有内容,会返回一个数组,但是长度为0.
*/
String[] names = file.list();
System.out.println(names.length);

for(String name : names){
System.out.println(name);
}
}
}




[b]过滤器[/b]



[b]FileListDemo.java[/b]

package zhouls.bigdata.DataFeatureSelection.test;

import java.io.File;

import zhouls.bigdata.DataFeatureSelection.test.FilterByHidden;
import zhouls.bigdata.DataFeatureSelection.test.SuffixFilter;

public class FileListDemo {
/**
* @param args
*/
public static void main(String[] args) {
listDemo();
listDemo_2();
listDemo_3();
listDemo_4();
}

public static void listDemo_4() {
File dir = new File("D:\\");
String[] names = dir.list(new FilterByJava());//FilterByJava.java
for(String name : names){
System.out.println(name);
}
}

public static void listDemo_3() {
File dir = new File("D:\\");
File[] files = dir.listFiles(new FilterByHidden());//FilterByHidden.java
for(File file : files){
System.out.println(file);
}
}

public static void listDemo_2() {
File dir = new File("D:\\");
String[] names = dir.list(new SuffixFilter(".txt"));
for(String name : names){
System.out.println(name);
}
}

public static void listDemo() {
File file = new File("D:\\");
/*
* 获取当前目录下的文件以及文件夹的名称,包含隐藏文件。
* 调用list方法的File对象中封装的必须是目录。
* 否则会发生NullPointerException
* 如果访问的系统级目录也会发生空指针异常。
* 如果目录存在但是没有内容,会返回一个数组,但是长度为0.
*/
String[] names = file.list();
System.out.println(names.length);

for(String name : names){
System.out.println(name);
}
}
}


[b]FilterByHidden.java[/b]

package zhouls.bigdata.DataFeatureSelection.test;

import java.io.File;
import java.io.FileFilter;

public class FilterByHidden implements FileFilter {
public boolean accept(File pathname) {
return !pathname.isHidden();
}
}


FilterByJava.java

package zhouls.bigdata.DataFeatureSelection.test;

import java.io.File;
import java.io.FilenameFilter;

public class FilterByJava implements FilenameFilter {
public boolean accept(File dir, String name) {
System.out.println(dir+"---"+name);
return name.endsWith(".java");//name是每个文件名称 ,   .java即凡是.java文件全为真
}
}


[b]SuffixFilter.java[/b]

package zhouls.bigdata.DataFeatureSelection.test;

import java.io.File;
import java.io.FilenameFilter;

public class SuffixFilter implements FilenameFilter {
private String suffix ;
public SuffixFilter(String suffix) {
super();
this.suffix = suffix;
}
public boolean accept(File dir, String name) {
return name.endsWith(suffix);
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐