File类使用小结
一、构造函数
- File(String pathname):根据参数转换为抽象路径名创建File实例
- File(String parent,String filename):根据parent和filename创建File实例,若parent所指定的路径不存在,则会报IOException
- File(File parent,String filename):同上
- File(URI uri)
二、常用方法
- exists() 判断抽象路径名中的文件或文件夹是否存在
- list() 返回的是包含指定目录下的文件和文件夹名的String[]数组(不包含子目录中的文件和文件夹),若此抽象路径名不表示目录,则会返回null
- createNewFile() 若文件不存在则创建,在成功的情况下会返回true,若指定的文件已存在则返回false。
- listRoots() 返回磁盘目录数组File[]
- list(FilenameFilter filter) 返回的是包含指定目录下满足过滤器要求的文件和文件夹名的String[]数组(不包含子目录中的文件和文件夹),若此抽象路径名不表示目录,则会返回null
- isDirectory() 判断是否为文件夹
- isFile() 判断是否为文件
- length() 返回文件的字节大小
三、代码示例
1、构造函数 示例1
import java.io.File;
import java.io.IOException; public class FileInputStream {
public static void main(String[] args) {
File file1=new File("F:\\");
File file=new File(file1,"helloworld.txt");
if(file.exists()){
String str=file.getName();
System.out.println(str);
}else{
try {
file.createNewFile();
System.out.println("file created");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} }
}
}
2、构造函数 示例2
import java.io.File;
import java.io.IOException; public class FileDemo2 {
public static void main(String[] args) {
/**
* File(String pathname,String filename)
* File(File path,String filename)
* 这两个函数中的第一个参数所指定的路径必须是存在的,否则就会报IOException
*
*/
File file1=new File("F:\\text2\\src");
if(file1.exists()){
System.out.println(file1.getName());
}else{
file1.mkdirs();
System.out.println("create successfully");
}
File file=new File(file1,"helloworld.txt");
if(file.exists()){
String str=file.getName();
System.out.println(str);
}else{
try {
file.createNewFile();
System.out.println("file created");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} }
}
}
3、使用FilenameFilter示例
import java.io.File;
import java.io.FilenameFilter; public class FileDemo6 {
public static void main(String[] args) {
File file=new File("F:\\media\\movie");
String[] filenames=file.list(new FilenameFilter() { public boolean accept(File dir, String name) {
// TODO Auto-generated method stub
return name.endsWith(".mp4");
}
});
for(String filename:filenames){
System.out.println(filename);
}
}
}
4、打印计算机根目录文件以及文件夹名
import java.io.File;
public class FileDemo4 {
public static void main(String[] args) {
File[] files=File.listRoots();
for(File file:files){
long length=file.length();
if(length>0){
String[] filenames=file.list();
for(String filename:filenames){
System.out.println(filename);
}
}
}
}
}
5、FileFilter使用示例
import java.io.File;
import java.io.FileFilter;
import java.io.FilenameFilter; public class FileDemo6 {
public static void main(String[] args) {
File file=new File("F:\\media\\movie");
File[] files=file.listFiles(new FileFilter() { public boolean accept(File pathname) {
// TODO Auto-generated method stub
return pathname.getName().endsWith(".mp4");
}
});
for(File file1:files){
System.out.println(file1.getName());
}
}
}
File类使用小结的更多相关文章
- Java基础14-缓冲区字节流;File类
作业解析 阐述BufferedReader和BufferedWriter的工作原理, 是否缓冲区读写器的性能恒大于非缓冲区读写器的性能,为什么,请举例说明? 答: BufferedReader对Rea ...
- JAVA I/O系统 Thinking in Java 之 File类
File类的文件具有一定的误导性,我们可能会认为它指代的是文件,实际上并非如此.它技能代表一个特定文件的名称,又能代表一个目录下的一组文件的名称.如果它指的是一个文件集,我们就可以对此集合调用list ...
- File类的特点?如何创建File类对象?Java中如何操作文件内容,什么是Io流Io流如何读取和写入文件?字节缓冲流使用原则?
重难点提示 学习目标 1.能够了解File类的特点(存在的意义,构造方法,常见方法) 2.能够了解什么是IO流以及分类(IO流的概述以及分类) 3.能够掌握字节输出流的使用(继承体系结构介绍以及常见的 ...
- 第8章 File I/O,File类操作文件的属性
1.文件 1.1.什么是文件? 答:文件可认为是相关记录或放在一起的数据的集合 1.2.文件- -般存储在哪里? 答: 磁盘,硬盘,文件夹 1.3.JAVA程序如何访向文件属性? JAVA API:i ...
- java中File类的使用
public class FileLei { public static void main(String[] args) throws IOException { //..表示上 ...
- File 类
File 类:文件和目录(文件夹)路径名的抽象表现形式. 方法 1.创建功能 public boolean createNewFile():创建文件 public boolean mkdir():创建 ...
- C#File类常用的文件操作方法(创建、移动、删除、复制等)
File类,是一个静态类,主要是来提供一些函数库用的.静态实用类,提供了很多静态的方法,支持对文件的基本操作,包括创建,拷贝,移动,删除和 打开一个文件. File类方法的参量很多时候都是路径path ...
- File类基础
File类的作用: Java的io包中定义了File类,用于对文件或文件夹的管理操作. File类只能够用于表示文件或文件夹的信息(属性)和对该文件或文件夹的删除创建操作 (不能对内容进行访问) 通过 ...
- 【转】File类应用 - FilenameFilter 和 FileFilter
FilenameFilter & FileFilter FilenameFilter 和 FileFilter 都是用来过滤文件,例如过滤,以.jpg或者.java结尾的文件,通过看他们的源码 ...
随机推荐
- topcoder SRM 628 DIV2 BracketExpressions
先用dfs搜索所有的情况,然后判断每种情况是不是括号匹配 #include <vector> #include <string> #include <list> # ...
- Shader实例:序列帧动画
效果: 序列帧图片网上随便找的,质量不是很好,重点不是它,不要在意. 思路: 1.之前都是在一张面片上直接映射一张纹理,IN.uv的范围是0~1 现在要映射一张纹理上的一小块区域,就要用这块区域的uv ...
- java 测试:iterator foreach for 三种迭代方式哪种更快?
代码: public class main { public static void main(String[] p_args){ ArrayList<String> _l_string ...
- API,框架,组件
API 是什么,API 就是通过提供方便使用的接口来执行它实现的功能. 用一个手电筒来作比喻: 手电筒的按钮就是接口,按下按钮就是它的方便的使用方式,发光就是它的功能,在这里我们可以称这个手电筒是个 ...
- Codeforces Round #384 (Div. 2) 734E Vladik and cards
E. Vladik and cards time limit per test 2 seconds memory limit per test 256 megabytes input standard ...
- Java 用LinkdeList实现52张扑克牌
用LinkdeList实现52张扑克牌(不含大小王)的洗牌功能.提示:花色 ,和数字分别用数组存储. import java.util.LinkedList; import java.util.Ran ...
- ActionMapping
在Struts中,ActionServlet只是任务的分派者,它依请求分配任务给其它的对象来执行,而分配的依据是请求的URI以及struts-config.xml的<action-mapping ...
- 拯救无法启动的虚拟机文件.vmdk中的数据
FROM: http://blog.csdn.net/npy_lp/article/details/7686583 从事Linux开发的软件工程师几乎都使用过虚拟机软件,如VMware worksta ...
- android——自定义listView
都知道微信主机面 有个界面会一行一一行的聊天记录,那个效果就可以用listview来实现(当然这只是其中的一种) listView是一种比较常见的组件它用来展示列的view,它是根据数据的长度来显示数 ...
- symbol table meaning
SYMBOL TABLE: 00000000 l df *ABS* 00000000 m.c 00000000 l d .text 00000000 .text 00000000 l ...