Java 文件/文件夹

File(文件、路径)

public static void main(String[] args) throws IOException {

//构造方法  无法判断 路径是否存在

win下文件夹名称不区分大小写  文件与文件夹不能重名

File f = new File("D:\\a"); //(文件/文件夹)对象

//File f = new File("D:" + File.separator + "a"); //多系统都能用

//File f2 = new File("a.txt"); //相对路径  当前项目路径

//File f3 = new File("D:\\a","b\\c.txt"); //(父路径, 子路径)

//File f4 = new File(f,"b.txt"); //(File对象, 文件路径)

String s1=File.pathSeparator; //系统 路径分隔符 win:分号  linux:冒号

String s2=File.separator; //系统 文件夹分隔符 win:\\  linux:/

File file2=new File("src"); //相对路径

String path=file2.getAbsolutePath();//获取绝对路径

//F:\java\codetool\eclipsework\Day1224\src

//判断功能

boolean flag = f2.createNewFile());//创建文件 是否成功 已存在不创建

boolean flag = f.mkdirs();//创建(多级)文件夹 是否成功 已存在不创建

boolean flag = f.delete();//删除文件/空文件夹 是否成功  不存在false

boolean flag = f.exists(); //判断文件或者文件夹是否存在

boolean flag = f.isAbsolute(); //判断File对象是否指向绝对路径

boolean flag = f.isDirectory(); //判断File对象是否是文件夹

boolean flag = f.isFile(); //判断File对象是否是文件

boolean flag = f.isHidden();//判断File对象是否有隐藏属性

//获取功能 修改名字功能

File file = f.getAbsoluteFile()); //返回绝对路径的File对象

String str = f.getAbsolutePath(); //返回File对象所指向的绝对路径

File file = f.getParent();

File file = f.getParentFile();

String name = f.getName(); //获取文件/文件夹的名称   "a"

String path = f.getPath(); //返回创建File对象时给的路径   "D:\\a"

long time = f.lastModified(); //获取最后修改时间 毫秒值

//Date d = new Date(2514023311294L);

//System.out.println(d.toLocaleString());

long size = f.length(); //返回文件的字节数

boolean flag = f.renameTo(f2); //修改路径 为 指定File路径

//获取文件夹下的文件

String[] files = f.list(); //返回File对象下所有的文件和文件夹名称

File[] files = f.listFiles(); //返回File数组 无路径 报错 空指针异常

//File[] files=f.listFiles(new Myfilter());  //满足Myfileter()条件的

for (File f : files) {System.out.println(f.getName());}

File[] files = File.listRoots();//返回根目录:哪个盘

getFile(f);//调用  获取多级目录下符合条件的文件

deleteFile(f);//删除指定的目录及内容 需先删除所有子文件和子目录

}

public static void getFile(File dir){//获取多级目录下符合条件的文件

File[] files=dir.listFiles(new Myfilter()); //File过滤器 符合条件 进数组

System.out.println(dir+"文件夹"); //打印文件夹

for(File f:files){

if(f.isDirectory()){getFile(f);} //文件夹  继续获取

else{System.out.println(f);} //文件  打印

}

}

//自定义类继承FileFilter过滤器接口

public class Myfilter implements FileFilter {//过滤器实现类   点出抽象方法

@Override

public boolean accept(File pathname) { //pathname 每一个 文件名

if(pathname.isDirectory()){return true;} //文件夹直接放行

return pathname.getName().toLowerCase().endsWith(".java");

} //文件名  转小写   是否以.java结尾   true/false

}

//自定义类继承FilenameFilter过滤器接口

class MyFilter implements FilenameFilter{

public boolean accept(File dir, String name) {

return name.endsWith(".java");

}

}

File parent = new File("b");

File f3 = new File(parent,"c.txt");

if(!parent.exists()) {parent.mkdirs();}

System.out.println(f3.createNewFile());

public static void getFile(File file) {//获取多级目录下符合条件的文件

if(file.isDirectory()) {

File[] files = file.listFiles();

for (File f : files) {

if(f.isFile()) {//判断是否是文件对象

if(f.getName().endsWith(".java")){

System.out.println(f.getName());

}

}else if(f.isDirectory()){//是一个目录对象

getFile(f);

System.out.println(f.getName());

}

}

}

}

public static void deleteFile(File file) {//删除指定目录下所有文件和目录

if(file.isDirectory()) {

File[] files = file.listFiles();

for (File f : files) {

if(f.isFile()) {System.out.println(f.getName()); f.delete();}

else if(f.isDirectory()) {deleteFile(f);}

}

System.out.println(file.getName()); file.delete();//干掉自己

}

}

IO异常处理

public class Demo01 {

public static void main(String[] args) {

FileOutputStream fos=null;

try {

fos2 = new FileOutputStream("F:\\java\\a.txt");

fos2.write("你好,小猪佩奇".getBytes());

//System.out.println(2 / 0);

} catch (IOException e) {

e.printStackTrace();

throw new RuntimeException("文件写入失败,重试");

}finally{

try {

if(fos2!=null){

fos2.close();

}

} catch (IOException e) {

e.printStackTrace();

throw new RuntimeException();

}

}

method02();

}

原文地址:https://www.cnblogs.com/javscr/p/10247911.html

时间: 2024-08-29 17:48:29

Java 文件/文件夹的相关文章

解决Eclipse建立Maven项目后无法建立src/main/java资源文件夹的办法

建立好一个Maven项目后,如果Java Resources资源文件下没有src/main/java文件夹,并且在手动创建这个文件时提示“已存在文件”. 这说明,在这个项目配置中已经有了src/main/java这个文件夹,至于为什么不显示,我暂时也还不清楚,希望谁明白了跟我下,谢了.(已解决) 第一种方法: 打开项目的classpath文件:如下 <?xml version="1.0" encoding="UTF-8"?><classpath&g

获取一个想要的指定文件的集合,获取文件夹下(包含子目录的所有.java的文件对象,并存储到集合中)

import java.io.File; import java.io.FileFilter; import java.io.ObjectInputStream.GetField; import java.util.ArrayList; import java.util.List; public class huoquwenjian { /*获取一个想要的指定文件的集合,获取文件夹下(包含子目录的所有.java的文件对象,并存储到集合中) * 思路: * 1,既然包含子目录,就需要递归. * 2

Java删除文件夹和文件

Java删除文件夹和文件 以前在javaeye看到过关于Java操作文件的一篇文章,写的很好,但找了半天也没找到,就把找到底几篇文章整理一下,做个总结,算是一个学习备份…… 1,验证传入路径是否为正确的路径名(Windows系统,其他系统未使用) Java代码 // 验证字符串是否为正确路径名的正则表达式 private static String matches = "[A-Za-z]:\\\\[^:?\"><*]*"; // 通过 sPath.matches(

java 遍历文件夹里的文件

Java遍历文件夹的2种方法: A.不使用递归: import java.io.File; import java.util.LinkedList; public class FileSystem { public static void main(String[] args) { long a = System.currentTimeMillis(); LinkedList list = new LinkedList(); File dir = new File("c:\\java\\&quo

解决Eclipse建立Maven项目后无src/main/java资源文件夹的办法

建立好一个Maven项目后,如果Java Resources资源文件下没有src/main/java文件夹,并且在手动创建这个文件时提示"已存在文件".这说明,在这个项目配置中已经有了src/main/java这个文件夹. 解决方法: 在项目上右键选择properties,然后点击java build path,在Librarys下,编辑JRE system Library,配置JDK路径.

Java读取文件夹大小的6种方法及代码

这篇文章介绍了JAVA读取文件夹大小的几种方法实例,有需要的朋友可以参考一下. (一)单线程递归方式 package com.taobao.test; import java.io.File; public class TotalFileSizeSequential { public static String fileName = "C:\\Documents and Settings\\Administrator\\桌面\\monkeytalk"; // 递归方式 计算文件的大小

java遍历文件夹

使用递归: import java.io.File; import java.util.ArrayList; public class FileSystem1 { private static ArrayList filelist = new ArrayList(); public static void main(String[] args) { long a = System.currentTimeMillis(); refreshFileList("C:/Users/shibin/Desk

JAVA 遍历文件夹下的所有文件

JAVA 遍历文件夹下的所有文件(递归调用和非递归调用) 1.不使用递归的方法调用. public void traverseFolder1(String path) { int fileNum = 0, folderNum = 0; File file = new File(path); if (file.exists()) { LinkedList<File> list = new LinkedList<File>(); File[] files = file.listFile

java移动文件夹、 慎用java file.renameTo(f)方法 、 java从一个目录复制文件到另一个目录下 、 java代码完成删除文件、文件夹 、

java移动文件夹(包含子文件和子文件夹): http://blog.csdn.net/yongh701/article/details/45070353 慎用java    file.renameTo(f)方法: http://www.cnblogs.com/mrwangblog/p/3934506.html 注意看结果,从C盘到E盘失败了,从C盘到D盘成功了.因为我的电脑C.D两个盘是NTFS格式的,而E盘是FAT32格式的.所以从C到E就是上面文章所说的"file systems"

Java生成文件夹

Java生成文件夹 1.说明 判断文件夹是否存在,如果不存在就创建该文件夹,并打印其路径:如果存在,打印其路径 2.实现源码 /** * @Title:BuildFolder.java * @Package:com.you.freemarker.model * @Description:创建文件夹 * @author:Youhaidong(游海东) * @date:2014-6-30 下午10:47:06 * @version V1.0 */ package com.you.freemarker