File
package fileDemo;
import java.io.File;
import java.io.FilenameFilter;
/**
* static File[] listRoots() 列出可用的文件系统根。
* String[] list() 返回一个字符串数组,这些字符串指定此抽象路径名表示的目录中的文件和目录。
* String[] list(FilenameFilter filter) 返回一个字符串数组,这些字符串指定此抽象路径名表示的目录中满足指定过滤器的文件和目录。
* File[] listFiles() 返回一个抽象路径名数组,这些路径名表示此抽象路径名表示的目录中的文件。
* File[] listFiles(FileFilter filter) 返回抽象路径名数组,这些路径名表示此抽象路径名表示的目录中满足指定过滤器的文件和目录。
* File[] listFiles(FilenameFilter filter) 返回抽象路径名数组,这些路径名表示此抽象路径名表示的目录中满足指定过滤器的文件和目录。
*
**/
/**
* @author Administrator
*
*/
public class ListDemo {
public static void main(String[] args) {
//listRootDemo();
//listDemo();
//fileNameFilter();
//listFilesDemo();
}
/**
* File[] listFiles() 返回一个抽象路径名数组,这些路径名表示此抽象路径名表示的目录中的文件。
*/
private static void listFilesDemo() {
File f1 = new File("F:\\cesi\\exam\\src");
File[] files=f1.listFiles();
for (File file : files) {
//只能得到文件的大小,不能得到文件夹的大小
System.out.println(file.getName()+"::"+file.length());
}
}
/**
* FileNameFilter过滤器
*/
private static void fileNameFilter() {
//创建File对象
File f1 = new File("F:\\cesi\\exam\\src\\com\\itheima");
//创建过滤器
String[] names=f1.list(new FilenameFilter() {
@Override
public boolean accept(File dir, String name) {
//System.out.println("dir"+dir+"name::s"+name);
/*if (name.endsWith(".java")) {
System.out.println("name:: "+name);
}
return true;*/
return name.endsWith(".java");
}
});
//遍历数组
for (String string : names) {
System.out.println(string);
}
}
/**
* 列出该目录下所有的文件(包括不可见文件)
*/
private static void listDemo() {
//File f1 = new File("D:\\yyy");
//File f2 = new File("H:\\yyy");
File f3 = new File("D:\\yyy"); //返回null
String[] arr=f3.list(); //调用list方法的file对象必须是封装了一个目录,该目录必须存在(NullPointerException)
if (arr.length==0) {
System.out.println("该目录为空");
return;
}
for (String string : arr) {
System.out.println(string);
}
}
/**
* 列出系統有效盘符
*/
private static void listRootDemo() {
File[] list=File.listRoots();
for (File file : list) {
System.out.println(file);
}
}
}
package fileDemo;
import java.io.File;
import java.io.IOException;
/**
* File类的常见方法:
* 1、创建
* booleancreteNewFile();在制定位置创建文件,如果该文件已经存在,则不创建,返回false,
* 与输出流不一样,输出流对象一建立就会创建文件,而且文件已经存在,就会覆盖该文件。
* boolean mkdir(); 创建目录
* boolean mkdirs(); 创建多级目录
*2、删除
*boolean delete();删除此抽象路径名表示的文件或目录。如果此路径名表示一个目录,则该目录必须为空才能删除。
* 当且仅当成功删除文件或目录时,返回 true;否则返回 false.
* void deleteOnExit();在程序退出时删除
*3、判断
*boolean exists() 文件或目录是否存在
*boolean isFile() 测试文件是否是一个标准文件。
*boolean isHidden() 测试此文件是否是一个隐藏文件。
* boolean isAbsolute() 测试此抽象路径名是否为绝对路径名。
* boolean isDirectory() 测试是目录
*4、获取
*(与路径相关)
* File getAbsoluteFile() 返回此抽象路径名的绝对路径名形式。 file对象
* String getAbsolutePath() 返回此抽象路径名的绝对路径名字符串。 file.toString()
* String getPath() 将此抽象路径名转换为一个路径名字符串。相对路径
* File getParentFile() 返回此抽象路径名父目录的抽象路径名;如果此路径名没有指定父目录,则返回 null。
* 如:"tang\\a.txt" =>tang"a.txt",则返回null
* String getParent() 返回此抽象路径名父目录的路径名字符串;如果此路径名没有指定父目录,则返回 null。
* 如:"tang\\a.txt" =>tang(tang.toString()底层实现)"a.txt",则返回null
* String getName() 返回由此抽象路径名表示的文件或目录的名称。
* 如:"tang\\a.txt" =>a.txt"a.txt",则返回a.txt
*
*
* File getCanonicalFile() 返回此抽象路径名的规范形式。
* String getCanonicalPath() 返回此抽象路径名的规范路径名字符串。
* long getFreeSpace() 返回此抽象路径名指定的分区中未分配的字节数。
* long getTotalSpace() 返回此抽象路径名指定的分区大小。
* long getUsableSpace() 返回此抽象路径名指定的分区上可用于此虚拟机的字节数。
* long lastModified() 返回此抽象路径名表示的文件最后一次被修改的时间。
* long length() 返回由此抽象路径名表示的文件的长度。
*
*
* 5、修改
* boolean renameTo(File dest) 重新命名此抽象路径名表示的文件。
* */
public class MethodDemo {
public static void main(String[] args) throws IOException {
File f1 = new File("D:\\BaiduYunDownload\\黑马程序员_毕向东_Java基础视频教程第20天\\黑马程序员_毕向东_Java基础视频教程第20天\\黑马程序员_毕向东_Java基础视频教程第20天-01-IO流(File概述).avi");
File f2 = new File("D:\\BaiduYunDownload\\黑马程序员_毕向东_Java基础视频教程第20天\\黑马程序员_毕向东_Java基础视频教程第20天\\File概述.avi");
System.out.println(f1.renameTo(f2));
}
/**
* 修改文件名:只能修改文件
*/
private static void modify() {
File f1 = new File("a.txt");
File f2 = new File("tang.txt");
System.out.println(f1.renameTo(f2));
}
/**
* 获取子、父文件、目录名
*/
private static void returnFileName() {
//获取
File f1 = new File("tang\\a.txt");
System.out.println("File:"+f1.getParentFile()); //tang
System.out.println("String:"+f1.getParent()); //tang
System.out.println(f1.getName()); //a.txt
File f2 = new File("a.txt");
System.out.println("File:"+f2.getParentFile()); //null
System.out.println("String:"+f2.getParent()); //null
System.out.println(f2.getName()); //a.txt
}
/**
* 判断文件、目录
*/
private static void panduan() {
File f1 = new File("D:\\Reflect");
System.out.println(f1.exists());
//判断文件对象是否是文件或者目录的时候,必须先要判断文件对象是否存在
System.out.println(f1.isDirectory());
System.out.println(f1.isFile());
System.out.println(f1.isAbsolute());
System.out.println(f1.isHidden());
}
/**
* boolean delete() 删除此抽象路径名表示的文件或目录。如果此路径名表示一个目录,则该目录必须为空才能删除。
* 当且仅当成功删除文件或目录时,返回 true;否则返回 false.
*/
private static void delete() {
// 将D:\\tang.txt(文件夹)封装成对象
File f2 = new File("D:\\tang\\tang.txt");
File f3 = new File("D:\\tang");
File f4 = new File("D:\\tangddd");
System.out.println(f2.delete());
System.out.println(f3.delete());
System.out.println(f4.delete());
}
/**
* 判断文件、目录是否存在
*/
private static void test3() {
// File f1 = new File("a.txt");
File f2 = new File("b.txt");
// System.out.println(f1);
// 记住在判断文件对象是否是文件、目录的时候,必须要先判断该文件对象封装的内容是否存在
System.out.println(f2.exists());
System.out.println(f2.delete());
}
/**
* 创建文件、文件目录
*
* @throws IOException
*/
private static void test2() throws IOException {
// 将a.txt封装成对象
File f1 = new File("a.txt");
// 创建文件
boolean b = f1.createNewFile();
System.out.println(b);
System.out.println(f1);
// 将D:\\tang.txt(文件夹)封装成对象
File f2 = new File("D:\\tang\\tang.txt");
// 创建目录
boolean b1 = f2.mkdirs();
System.out.println(b1);
System.out.println(f2);
}
/**
* 封装文件对象,封装内容(文件、目录)、文件夹对象--分隔符
*/
private static void test1() {
// 将D:\\封装成file对象 File.separator目录分隔符
File f = new File("D:" + File.separator);
// 将a.txt封装成file对象
File f2 = new File("a.txt");
System.out.println(f);
System.out.println(f2);
}
}
相关推荐
有时候会碰到cuda报错,OSError: libcudart.so.10.0: cannot open shared object file: No such file 原因是cuda动态链接库没有链接上。 解决方法如下: cuda10.0: sudo ldconfig /usr/local/cuda-10.0/lib64 cuda...
(1)struct file结构体定义在include/linux/fs.h中定义。文件结构体代表一个打开的文件,系统中的每个打开的文件在内核空间都有一个关联的struct file。它由内核在打开文件时创建,并传递给在文件上进行操作的任何...
import java.io.File; import java.util.ArrayList; import java.util.List; /** * * 项目名称:FileTest * 类名称:TreeFile * 类描述:将制定目录下得所有子目录和文件按树形输出 * 创建时间:2011-10-19 ...
all-file-to-all-file-converter.exe
2、NIFI应用示例-GetFile和PutFile应用 网址:https://blog.csdn.net/chenwewi520feng/article/details/130596577 本文前提是NIFI环境已经部署好。 本示例为NIFI的第一个应用示例,旨在说明Nifi的工作过程。 本文...
注意:input[type=file] 标签中的属性accept=application/msword,application/pdf 在pc上正常,但是在手机ios和android上这个文件格式限制会被忽略,所以需要在js中增加格式的判断,以及对应显示样式的设置.(我也是刚...
Android 无法创建File文件 ,在上传图片的时候报错,提示file文件夹未空或在手机清空缓存删除文件夹后 文件夹无法创建 使用file.mkdirs()方法 返回一直是false 提供的功法可以直接解决该问题
ib_logfile0ib_logfile0ib_logfile0
android 9.0及其以上版本手机 操作数据库,再打开数据库db文件出现 “File opened that is not a database file file is encrypted or is not a database”android 9.0以下的版本 不会出现。 原因及解决方法。
Office2007不支持FileSearch对象!在Office2003中使用了FileSearch对象遍历文件夹子文件夹搜索文件的代码不行了!替代方案很多,但是另起炉灶,重写代码。实在不想抛弃原来写好的代码,于是在官方建议替代方案的基础...
基于.NET4.0的MemoryMappedFile实现共享内存通信 共享内存通信可以解决跨线程、跨进程、跨EXE之间通信的问题 对于需要传输图片等引用类数据,可以通过序列化和反序列化配合共享内存实现跨进程(跨EXE)通信 共享...
The Windows file system is large and complex, featuring not only a huge number of essential files and folders for the Windows OS, your software and hardware, but also several different underlying file...
群晖FileManager管理工具,直接远程管理的,解压即可用,使用时运行bin目录下synology-file-manager.exe即可
内部将FileGDB、HDF4、HDF5、GEOS、PROJ4、ECW、Jpg2000、libexpt、libcurl、libiconv、netcdf、xerces_c、sqlite3等常用的库全部编译进去 语言 C\C++、C#、Java、Python 含有帮助文档 如果程序不能执行,或者...
File Splitter is a useful and free program that enables you to split a large file into small chunks which are easy to be sent and stored, while File Joiner allows you to join these split parts ...
插件版本是FileBrowser 1.2.2,可用于Windows和macOS上的本地文件对话框的简单包装器。 支持打开文件/文件夹,保存文件等操作,支持文件扩展名的过滤器。Supported Unity versions 5.0.0 or higher
The Portable Executable File Format from Top to Bottom 附带源码
python 递归遍历文件夹得到json格式目录树目录结构,输出的json目录结构如下:[{"title":"file1","value":"file"},{"title":"general","value":"dir","subdir":[{"title":"file2","value":"file"},{"title":"photo",...
微软针对这个问题发布了一个补丁,里提供了一个已编译的版FileTool.dll_已编译.zip 大家不管是自行编译也好,还是下载提供的已编译的FileTool.dll,使用方法都一样: 1. 把FileTool.dll文件拷贝至 C:\Program ...