Java 文件操作

2021-03-11  本文已影响0人  西贝巴巴
package com.company;

import java.io.*;
import java.rmi.server.ExportException;
import java.util.Date;

/*

Java 文件写入、读取文件内容、删除文件、将文件内容复制到另一个文件、创建临时文件
修改文件最后的修改日期、获取文件大小、文件重命名、设置文件只读

*/
public class FileWriteTest {

    public static void main(String[] args) throws Exception {
        //文件写入
        BufferedWriter out = new BufferedWriter(new FileWriter("da.txt"));
        out.write("明天将会更加美好");
        out.close();
        System.out.println("文件创建和写入成功");

        //读取文件内容
        BufferedReader in = new BufferedReader(new FileReader("da.txt"));
        String str;
        while ((str = in.readLine()) != null) {
            System.out.println("str:" + str);
        }
        System.out.println(str);

        //文件删除
        File file = new File("da.txt");
        String filename = file.getName();
        System.out.println("filename: " + filename);
        boolean isDel = file.delete();
        if (isDel) {
            System.out.println("da.txt 存在 删除成功");
        } else {
            System.out.println("da.txt 不存在 删除失败");
        }

        //将文件内容复制到另一个文件
        BufferedWriter writer1 = new BufferedWriter(new FileWriter("srcfile"));
        writer1.write("string to be copied\n");
        writer1.close();
        InputStream in1 = new FileInputStream(new File("srcfile"));
        OutputStream out2 = new FileOutputStream(new File("destnfile"));
        byte[] buf = new byte[1024];
        int len;
        while ((len = in1.read(buf)) > 0) {
            out2.write(buf, 0, len);
        }
        in1.close();
        out2.close();
        //srcfile 追加信息
        writer1 = new BufferedWriter(new FileWriter("srcfile", true));
        writer1.write("这是我新添加的");
        writer1.close();
        BufferedReader test2 = new BufferedReader(new FileReader("destnfile"));
        String str2;
        while ((str2 = test2.readLine()) != null) {
            System.out.println("str2:" + str2);
        }
        in1.close();
        BufferedReader test3 = new BufferedReader(new FileReader("srcfile"));
        String str3;
        while ((str3 = test3.readLine()) != null) {
            System.out.println("str3:" + str3);
        }
        System.out.println("str3 null:" + str3);

        //创建零时文件
        File test4 = File.createTempFile("testrunoobtmp", ".txt");
        String test4Add = test4.getAbsolutePath();
        System.out.println("文件路径:" + test4Add);
        test4.deleteOnExit();

        //修改文件最后的修改日期
        File test5 = new File("test5.txt");
        test5.createNewFile();
        Date filetime = new Date(test5.lastModified());
        System.out.println("filetime:" + filetime.toString());
        test5.setLastModified(System.currentTimeMillis());
        filetime = new Date(test5.lastModified());
        System.out.println("filetime new:" + filetime.toString());

        //获取文件大小
        if (!test5.exists() || !test5.isFile()) {
            System.out.println("test5 文件不存在");
        } else {
            System.out.println("test5 文件存在");
        }
        long test5Len = test5.length();
        System.out.println("test5Len:" + test5Len);

        //文件重命名
        File newFile = new File("test55.txt");
        if (newFile.exists()) {
            System.out.println("file exists");
        } else {
            if (test5.renameTo(newFile)) {
                System.out.println("已重命名");
            } else {
                System.out.println("Error");
            }
        }


        //设置文件只读
        System.out.println(test5.setReadOnly());
        System.out.println(test5.canWrite());

        //在指定目录中创建文件
        File dir = new File("da");
        File test6 = File.createTempFile("test", ".txt", dir);
        System.out.println(test6.getPath());

    }
}

上一篇 下一篇

猜你喜欢

热点阅读