有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

在Windows和Linux操作系统下访问Java应用程序中的外部文件

请允许我面对以下问题:

在我的Java程序中,我访问了一些文件,这些文件在windows下的访问方式似乎与Linux不同。例如,如果我想访问与项目位于同一文件夹中的以下文件,我将编写以下代码:

在Linux下:File Operations_File = new File("Data/Operations.txt");
在Windows下:File Operations_File = new File("Data\\Operations.txt");

我需要一种在所有操作系统(或至少在这两种操作系统)下都能工作的标准方法。因为编写两个版本的代码一点也不优雅

我正在操作的两个操作系统是:LinuxMint9和WindowsXP。我在整个项目中都使用了NetBeans 6.9.1

非常感谢你的帮助


共 (2) 个答案

  1. # 1 楼答案

    文件。分离器正是为了这个

    文件f=新文件(“数据”+文件.separator+“Operations.txt”)

    不要和文件混淆。pathSeparator,用于将路径彼此分离。例如:

    /usr/local/lib:/usr/lib:/var/lib

    在上面的示例中,:是路径分隔符(windows使用;用于路径分隔符)

  2. # 2 楼答案

    您还可以创建一个File表示目录,另一个File表示该目录中的某些内容,如下所示:

    File dataDir = new File("Data");
    File operationsFile = new File(dataDir, "Operations.txt");
    

    您也可以跳过目录的File,也可以这样做:

    File operationsFile = new File("Data", "Operations.txt");
    

    在Windows下,打印出operationsFile将按预期提供Data\Operations.txt