Java 实例 - 向文件中追加数据
以下实例演示了使用 filewriter 方法向文件中追加数据:
package com.example.yan.java文件写入; import java.io.*; public class Main5 { public static void main(String[] args) throws Exception { try { BufferedWriter out = new BufferedWriter(new FileWriter("filename")); out.write("aString1\n"); out.close(); out = new BufferedWriter(new FileWriter("filename",true)); out.write("aString2"); out.close(); BufferedReader in = new BufferedReader(new FileReader("filename")); String str; while ((str = in.readLine()) != null) { System.out.println(str); } in.close(); } catch (IOException e) { System.out.println("exception occoured"+ e); } } }
Java 实例 - 创建临时文件
以下实例演示了使用 File 类的 createTempFile(String prefix, String suffix); 方法在默认临时目录来创建临时文件,参数 prefix 为前缀,suffix 为后缀:
import java.io.*; public class Main { public static void main(String[] args) throws Exception { File temp = File.createTempFile("test", ".txt"); System.out.println("文件路径: "+temp.getAbsolutePath()); temp.deleteOnExit(); BufferedWriter out = new BufferedWriter(new FileWriter(temp)); out.write("aString"); System.out.println("临时文件已创建:"); out.close(); } }
也可以使用 createTempFile(String prefix, String suffix, File directory) 中的 directory 参数来指定临时文件的目录:
import java.io.File; public class Main { public static void main(String[] args) { File f = null; try { // 创建临时文件 f = File.createTempFile("tmp", ".txt", new File("C:/")); // 输出绝对路径 System.out.println("File path: "+f.getAbsolutePath()); // 终止后删除临时文件 f.deleteOnExit(); // 创建临时文件 f = File.createTempFile("tmp", null, new File("D:/")); // 输出绝对路径 System.out.print("File path: "+f.getAbsolutePath()); // 终止后删除临时文件 f.deleteOnExit(); } catch(Exception e) { // 如果有错误输出内容 e.printStackTrace(); } } }
在创建完成后价格线程休眠,不然根本看不到创建就被删除了
public static void main(String[] args) throws IOException, InterruptedException { File temp = File.createTempFile("test", ".txt"); System.out.println("文件路径: "+temp.getAbsolutePath()); temp.deleteOnExit(); BufferedWriter out = new BufferedWriter(new FileWriter(temp)); out.write("aString"); out.flush(); System.out.println("临时文件已创建:"); Thread.sleep(10000); System.out.println("临时文件已删除"); out.close(); }
Java 实例 - 修改文件最后的修改日期
以下实例演示了使用 File 类的 fileToChange.lastModified() 和 fileToChange setLastModified() 方法来修改文件最后的修改日期:
import java.io.File; import java.util.Date; public class Main { public static void main(String[] args) throws Exception { File fileToChange = new File("C:/myjavafile.txt"); fileToChange.createNewFile(); Date filetime = new Date(fileToChange.lastModified()); System.out.println(filetime.toString()); System.out.println(fileToChange.setLastModified(System.currentTimeMillis())); filetime = new Date(fileToChange.lastModified()); System.out.println(filetime.toString()); } }
以上代码运行输出结果为:
Sat Mar 21 22:00:48 CST 2015 true Fri Apr 10 11:09:19 CST 2015
Java 实例 - 获取文件大小
以下实例演示了使用 File 类的 file.exists() 和 file.length() 方法来获取文件大小,以字节计算(1KB=1024字节 ):
import java.io.File; public class Main { public static long getFileSize(String filename) { File file = new File(filename); if (!file.exists() || !file.isFile()) { 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); } }
以上代码运行输出结果为(java.txt 文件位于 C 盘):
java.txt文件大小为: 480
Java 实例 - 文件重命名
以下实例演示了使用 File 类的 oldName.renameTo(newName) 方法来重命名文件:
import java.io.File; public class Main { public static void main(String[] args) { File oldName = new File("C:/program.txt"); File newName = new File("C:/java.txt"); if(oldName.renameTo(newName)) { System.out.println("已重命名"); } else { System.out.println("Error"); } } }
以上代码运行输出结果为(执行该程序前你可以先创建 program.txt 文件):
已重命名
Java 实例 - 设置文件只读
以下实例演示了使用 File 类的 file.setReadOnly() 和 file.canWrite() 方法来设置文件只读:
import java.io.File; public class Main { public static void main(String[] args) { File file = new File("C:/java.txt"); System.out.println(file.setReadOnly()); System.out.println(file.canWrite()); } }
以上代码运行输出结果为:
true false