Java中File类的对象主要用于获取文件本身的一些信息,不涉及文件的读写操作。
File类的构造方法
- public File(String filename)用来在当前工程目录下创建一个文件对象,文件名为filename
- public File(String directoryPath,String filename),用来在directoryPath目录下创建一个名为filename的文件对象
- public File(File dir,String filename),用来在dir目录下创建一个名为filename的文件对象,dir为文件目录对象
第一种方式创建文件对象
public class filetext {
public static void main(String[] args) throws IOException {
// TODO Auto-generated method stub
File myFile = new File("ptr.java");
if(myFile.exists()==false) {
myFile.createNewFile();
}
System.out.println(myFile.getAbsolutePath());
}
}
//D:\hlhlhl\pro\ptr.java
第二种方式创建文件对象
import java.io.*;
public class filetext {
public static void main(String[] args) throws IOException {
// TODO Auto-generated method stub
File myFile = new File("E:\\","ptr.java");
if(myFile.exists()==false) {
myFile.createNewFile();
}
System.out.println(myFile.getAbsolutePath());
}
}
//E:\ptr.java
第三种方式创建文件对象
import java.io.*;
public class filetext {
public static void main(String[] args) throws IOException {
// TODO Auto-generated method stub
File fileDir = new File("E:\\ptr");
fileDir.mkdir();
File myFile = new File(fileDir,"app.txt");
if(myFile.exists()==false) {
myFile.createNewFile();
}
System.out.println(myFile.getAbsolutePath());
}
}
//E:\ptr\app.txt
文件的属性
- public String getName()获取文件的名字
- public boolean canRead()获取文件是否是可读的
- public boolean canWrite()获取文件是否是可写的
- public boolean exists()判断文件是否存在
- public long length()获取文件的长度(单位是字节)
- public String getAbsolutePath()获取文件的绝对路径
- public String getParent()获取文件的父目录
- public boolean isFile()判断文件对象是否是一个普通的文件,而不是目录
- public boolean isDirectory()判断文件是否是一个目录
- public boolean createNewFile()判断文件对象是否存在本地文件,不存在则创建文件
import java.io.File;
import java.io.IOException;
public class Main {
public static void main(String[] args) throws IOException {
// TODO Auto-generated method stub
File myfile = new File("C:\\","mybase");
myfile.mkdir();
File afile = new File(myfile,"a.txt");
if(afile.exists() ==false)
afile.createNewFile();
System.out.println("文件的名字:"+afile.getName());
System.out.println("判断文件是否是可读的:"+afile.canRead());
System.out.println("判断文件是否可以写入:"+afile.canRead());
System.out.println("判断文件是否存在:"+afile.exists());
System.out.println("获取文件的长度:"+afile.length());
System.out.println("获取文件的绝对路径:"+afile.getAbsolutePath());
System.out.println("获取文件的父目录:"+afile.getParent());
System.out.println("判断文件对象是一个普通文件而不是目录:"+myfile.isFile());
System.out.println("判断一个文件对象是否为目录:"+afile.isDirectory());
System.out.println("判断文件是否为隐藏文件:"+afile.isHidden());
System.out.print("获取文件的最后修改时间:"+afile.lastModified());
}
文件的名字:a.txt
判断文件是否是可读的:true
判断文件是否可以写入:true
判断文件是否存在:true
获取文件的长度:0
获取文件的绝对路径:C:\mybase\a.txt
获取文件的父目录:C:\mybase
判断文件对象是一个普通文件而不是目录:false
判断一个文件对象是否为目录:false
判断文件是否为隐藏文件:false
获取文件的最后修改时间:1556210527603
文件的目录
- 创建目录,文件对象调用midir()方法创建文件目录
- 返回目录中的文件 public String[] list()以字符串数组形式返回
- 返回目录中的文件 public File[] listFiles()以文件对象数组形式返回
import java.io.*;
public class filetext {
public static void main(String[] args) throws IOException {
// TODO Auto-generated method stub
File myfile = new File("E:\\概率论考试题\\","阶段二");
myfile.mkdir();
String[] list = myfile.list();
for(String i:list) {
System.out.println(i);
}
//File[] list = myfile.listFiles();
//for(File i:list) {
//System.out.println(i.getName());
//}
}
}
概率统计15-16第1学期阶段二试题A答案.doc
概率统计15-16第1学期阶段二试题A.doc
概率统计15-16第2学期阶段二试题A.doc
概率统计15-16第2学期阶段二试题答案.doc
概率统计16-17第2学期阶段二试题.doc
概率统计16-17第2学期阶段二试题答案.doc
概率统计13-14第2学期阶段2试题A.doc
概率统计17-18第1学期阶段二试题.doc
概率统计17-18第1学期阶段二试题答案.doc
概率统计14-15第1学期阶段2试题A答案.doc
概率统计14-15第1学期阶段2试题.doc
概率统计14-15第2学期阶段二试题A.doc
概率统计14-15第2学期阶段二试题A答案.doc
概率统计17-18第2学期阶段二试题答案.doc
概率统计17-18第2学期阶段二试题.doc
难点:选出文件夹下面的所有.java文件
import java.io.File;
import java.io.IOException;
import java.io.FileFilter;
class FileAccept implements FileFilter{
private String extendName;
public void setExtendName(String s){
extendName = "."+s;
}
public boolean accept(File dir,String name){
return name.endsWith(extendName);
}
@Override
public boolean accept(File pathname) {
// TODO Auto-generated method stub
return false;
}
}
public class Main {
public static void main(String[] args) throws IOException {
// TODO Auto-generated method stub
File myfile = new File("C:\\","mybase");
System.out.println(myfile.mkdir());
File[] contains = myfile.listFiles(new FileAccept());
for(File i:contains){
System.out.println(i.getName());
}
}
}
文件的创建与删除
文件的创建
当使用Files类创建一个文件对象时,如果本地没有这个文件,文件对象需要调用createNewFile()方法创建一个文件可执行文件的运行
if(myFile.exists()==false) {
myFile.createNewFile();
}
可执行文件的运行
当要执行本地机器的一个可执行文件的时候,可以使用java.lang.Runtime类
使用静态方法getRuntime()方法创建一个Runtime对象
Runtime rc = Runtime.getRuntime();
调用exec(String Command)方法打开本地的一个可执行文件(.exe文件)
import java.io.*;
import java.lang.Runtime;
public class filetext {
public static void main(String[] args) throws IOException {
// TODO Auto-generated method stub
File myFile = new File("D:\\Navicat for Oracle","navicat.exe");
Runtime rc = Runtime.getRuntime();
rc.exec(myFile.getAbsolutePath());
}
}