我想在我的项目文件夹中创建一个新的.txt
文件,我想给它这条路径:
Contents/FrameClasses/Data/Datafiles/MYFILE.txt
我用来制作文件夹的是:
File MYFILE = new File("Contents/FrameClasses/Data/Datafiles/MYFILE.txt");
MYFILE.getParentFile().mkdir();
try{
if(MYFILE.createNewFile()){
//do stuff here
}
}catch (Exception e){
//do stuff with the exception...
}
每当我这样做时,我都会收到错误消息:
java.io.IOException:没有这样的文件或目录
如果我将src/
添加到路径的开头并将其设为如下所示,则会修复错误:
src/Contents/FrameClasses/Data/Datafiles/MYFILE.txt
但是src/
不属于我的项目,因为所有都包含在我创建的Contents
文件夹中。当我构建.jar
文件时,如果我在路径中添加src/
后运行它,则会出现相同的错误。
创建此文件的正确方法是什么?
PS :我也尝试使用像这样的较短路径:Datafiles/MYFILE.txt
但没有成功。此外,我用来制作文件的类包含在文件夹Data
中,与Datafiles
一起,如原始路径所示。
答案 0 :(得分:0)
简答:您不应该将文件写入类文件夹中。
在运行时中,我们将使用 jar文件运行 Java程序,而 jar 基本上是< strong> zip 文件,你不能直接通过路径写入你自己的运行时 jar 。如果你使用 jar 文件运行它,它可能会抛出异常,如:
src/Contents/FrameClasses/Data/Datafiles/MYFILE.txt
并且:
File MYFILE = new File(this.getClass().getResource("/").getPath() + "Contents/FrameClasses/Data/Datafiles/MYFILE.txt")
此路径有效,我认为您是以IDE或其他方式运行,但未使用已发布的 jar文件运行。
if x_axis == 1:
if ws_to_format.cell(row=1, column=y_axis).value:
ws_to_format.cell(row=1, column=y_axis).font = header_font
ws_to_format.cell(row=1, column=y_axis).font = header_alignment
应该有效。