【问题标题】:Save a File on a specific path将文件保存到特定路径
【发布时间】:2018-10-28 17:48:29
【问题描述】:

我有当前代码:

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

}

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

【问题讨论】:

  • 您无需创建文件即可对其进行写入。

标签: java file path bufferedwriter data-files


【解决方案1】:

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

【讨论】:

  • 我认为他特别希望始终将他的文件存储到给定目录中,而与计算机无关。所以做一个相对路径应该是响应。
  • 感谢您使用 System.getProperty("user.home") 对我有很大帮助,无论用户使用该程序,我都可以获取用户的路径,这样我可以保存所有文件我想在一个特定的文件夹中再次感谢
【解决方案2】:

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

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

【讨论】:

    猜你喜欢
    • 2014-11-09
    • 1970-01-01
    • 1970-01-01
    • 2014-05-19
    • 2011-04-22
    • 2012-04-29
    • 2021-07-26
    • 1970-01-01
    相关资源
    最近更新 更多