我在打开文件时使用此方法,但当我打开项目时,它不会运行,因为它来自mac设备。我在哪里存储txt文件,我应该写什么来代替它
(new File("D:\\description.txt"));
方法
Scanner inStream = null;
try {
inStream = new Scanner(new File("D:\\description.txt"));
}
catch (FileNotFoundException e) {
System.out.println("Erorr openenig the file");
}
while (inStream.hasNextLine ()) {
String line = inStream.nextLine();
System.out.println(line);
}
1条答案
按热度按时间pgky5nke1#
有几种方法可以单独使用,也可以结合使用:
硬编码元素应该是可配置的。使路径可配置,意味着您可以根据所处的平台拥有不同的内容。
如果文件属于发行版,请确保它存储在类路径中,并使用
YourClass.class.getResourceAsStream("/description.txt")
; 其中yourclass是发行版中的一个类。资源是相对于类(yourclass)位置的路径,因此如果希望它位于类路径的根,则需要使用正斜杠“/”作为前缀。在这里,您不需要担心操作系统约定(正斜杠和反斜杠)。正如其他人所说,在这种情况下,您可能不应该认为您的文件是可写的。另一种典型的方法,用于存储特定于某个用户的配置内容,是将其存储在默认路径位置,并自动解析get。java系统属性“user.home”就是一个很好的例子。在windows环境中,它将解析为%home%环境变量(类似于
/User/myuserid
).