在特定路径上保存文件

Save a File on a specific path

我有当前代码:

    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();
    }

}

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

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

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

对于你的问题,你必须声明一个相对路径,这样它就独立于执行它的计算机,而不是绝对路径,它从文件系统的根开始。