7.7Java 实例 - 修改文件最后的修改日期
(Boo)createNewFile(),lastModified()
以下实例演示了使用 File 类的 fileToChange.lastModified() 和 fileToChange setLastModified() 方法来修改文件最后的修改日期:
Main.java 文件
import java.io.File;
import java.util.Date;
public class Main1 {
public static void main(String[] args) throws Exception {
File fileToChange = new File("C:/Users/xyt/Desktop/myjavafile.txt");
fileToChange.createNewFile();
/**boolean java.io.File.createNewFile() throws IOException
createNewFile
public boolean createNewFile()
throws IOException
*
*/
Date filetime = new Date(fileToChange.lastModified());
/**
long java.io.File.lastModified()
lastModified 返回此抽象路径名表示的文件上次修改的时间。返回此抽象路径名表示的文件上次修改的时间。
public long lastModified()
*/
System.out.println(filetime.toString());
System.out.println(fileToChange.setLastModified(System.currentTimeMillis()));
/**
* boolean setLastModified(long time)
设置由此抽象路径名命名的文件或目录的最后修改时间。
*/
filetime = new Date(fileToChange.lastModified());
System.out.println(filetime.toString());//toString以字符串形式返回对象本身
}
}
以上代码运行输出结果为:
Wed Feb 24 20:51:41 CST 2021
true
Wed Feb 24 20:53:30 CST 2021
7.8Java 实例 - 获取文件大小
exists(),isFile(),length()
以下实例演示了使用 File 类的 file.exists() 和 file.length() 方法来获取文件大小,以字节计算(1KB=1024字节 ):
Main.java 文件
import java.io.File;
public class Main1 {//7.8
public static long getFileSize(String filename) {//构造方法
File file = new File(filename);
if (!file.exists() || !file.isFile()) {//不存在或者不是普通文件
/**boolean isFile()
测试此抽象路径名表示的文件是否为普通文件。
* boolean exists()
测试此抽象路径名表示的文件或目录是否存在。
*/
System.out.println("文件不存在");
return -1;
}
return file.length();
}
public static void main(String[] args) {
long size = getFileSize("c:/java.txt");
System.out.println("java.txt文件大小为: " + size);//电脑权限问题我先在桌面创建然后移入c盘
}
}
没有手动创建运行结果:
文件不存在
java.txt文件大小为: -1
以上代码运行输出结果为(java.txt 文件位于 C 盘):
java.txt文件大小为: 6
7.9Java 实例 - 文件重命名
exists(),renameTo()
以下实例演示了使用 File 类的 oldName.renameTo(newName) 方法来重命名文件。
执行以下程序前需要在当前目录下创建测试文件 runoob-test.txt。
Main.java 文件
import java.io.File;
import java.io.IOException;
public class RunoobTest {
public static void main(String[] args) throws IOException {
// 旧的文件或目录
File oldName = new File("./runoob-test.txt");//能执行的前题是存在,创建文件是FileWriter
//=File oldName = new File("runoob-test.txt");
// 新的文件或目录
File newName = new File("./runoob-test-2.txt");
if (newName.exists()) { // 确保新的文件名不存在
throw new java.io.IOException("file exists");
}
if(oldName.renameTo(newName)) {
/**boolean renameTo(File dest)
重命名由此抽象路径名表示的文件。
*/
System.out.println("已重命名");
} else {
System.out.println("Error");
}
}
}
没有创建:
Error
File oldName = new File("runoob-test.txt");=
File oldName = new File("./runoob-test.txt");
创建了:
已重命名
7.10Java 实例 - 设置文件只读
setReadOnly(),canWrite()
以下实例演示了使用 File 类的 file.setReadOnly() 和 file.canWrite() 方法来设置文件只读:
Main.java 文件
import java.io.File;
public class Main1 {
public static void main(String[] args) {
File file = new File("C:/java.txt");//有(137677)
System.out.println(file.setReadOnly());
/** boolean setReadOnly()
标记由此抽象路径名命名的文件或目录,以便只允许读取操作。
*/
System.out.println(file.canWrite());
/**boolean canWrite()
测试应用程序是否可以修改由此抽象路径名表示的文件。
*/
}
}
以上代码运行输出结果为:
True
false