我有当前代码:
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();
}
}
第一种方法仅在文件不存在时创建文件,第二种方法最后创建文件夹。第三种方法保存数据。我的问题是我想将一些文件保存在我首先创建的文件夹中,我该如何设置路径要将这些文件保存在那里,我还有一个问题,这个小程序将在不同的计算机上执行,因此路径对于任何计算机都将更改
答案 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
对于您的问题,您必须声明一个相对路径,因此它将独立于将在其上执行的计算机,而不是从文件系统根目录开始的绝对路径。