FileOutputStream或使用java文件的任何创建文件默认在Eclipse主文件夹的相对路径中创建[重复]

问题描述 投票:0回答:1

这个问题在这里已有答案:

图片:https://i.stack.imgur.com/nB9Ys.jpg

什么时候我使用文件创建代码.file在eclipse主文件夹中创建而不是在我的项目中

FileOutputStream fos = new FileOutputStream("filename.txt"); 
OutputStreamWriter osw = new OutputStreamWriter(fos, "utf-8");
Writer writer = new BufferedWriter(osw);
writer.write("something");
System.out.println("new file created ");[enter image description here][1]

我需要在eclipse conf文件中更改任何内容吗?它真的让我很难读取任何文件。我无法在任何项目中使用相对路径

java fileinputstream fileoutputstream
1个回答
0
投票

有一些环境变量可确定根对于相对路径的位置。很容易找出哪一个,但我认为你的解决方案不应该依赖于此。解决问题的最简单方法是使用绝对路径(类似"C:/myfolder/filename.txt"而不是"filename.txt"。但是如果你想要更灵活,可以在属性文件中添加属性(或者以任何其他方式选择添加在该属性中存储您的根路径。然后,当您要创建读取或写入文件时,使用该属性构建路径:

@Value("${root.path}")
public String ROOT_PATH;
...
FileOutputStream fos = new FileOutputStream(ROOT_PATH + "filename.txt");
...
© www.soinside.com 2019 - 2024. All rights reserved.