将文件保存到特定路径

时间:2018-10-28 17:48:29

标签: java file path bufferedwriter data-files

我有当前代码:

    public void crearArchivo(String nombre) {
        archivo = new File(nombre.replaceAll("\\s", "") + ".txt");
        if (!archivo.exists()) {
            try {
            archivo.createNewFile();
                } catch (Exception e) {
                  e.printStackTrace();
        }
    }

}

public void crearCarpeta(String nombreCarpeta){
    File directorio = new File(nombreCarpeta);
    directorio.mkdir();

}

public void crearArchivoDatos(String nombreArchivo, ArrayList<String>datos) {
    crearArchivo(nombreArchivo);
    try {
        BufferedWriter bw = new BufferedWriter(new FileWriter(archivo));

        for (int i = 0; i < datos.size(); i++) {
            bw.write(datos.get(i));
        }
        bw.close();
    } catch (Exception e) {
        //e.printStackTrace();
    }

}

第一种方法仅在文件不存在时创建文件,第二种方法最后创建文件夹。第三种方法保存数据。我的问题是我想将一些文件保存在我首先创建的文件夹中,我该如何设置路径要将这些文件保存在那里,我还有一个问题,这个小程序将在不同的计算机上执行,因此路径对于任何计算机都将更改

2 个答案:

答案 0 :(得分:0)

您可以使用System.getProperty(...)获取任何计算机上的文件夹路径-例如System.getProperty("user.home")为您提供当前用户目录(您可以从中访问桌面目录和其他文件夹),以及{{1 }}为您提供执行程序的文件夹的路径。

答案 1 :(得分:0)

可以使用Java 8 NIO.2方法在Java中创建或修改文件。 这是Oracle文档的链接:https://docs.oracle.com/javase/tutorial/essential/io/fileio.html

对于您的问题,您必须声明一个相对路径,因此它将独立于将在其上执行的计算机,而不是从文件系统根目录开始的绝对路径。