解决 Mac 和 Windows 之间的路径差异

Resolving Path Differences Between Mac and Windows

我是 Stack Overflow 的新手,也是编程的新手,所以希望这是有道理的。我正在编写一个 java 程序,它在特定目录中创建一个文件。我的程序适用于 Windows 并在正确的位置创建文件,但它不适用于 Mac。我曾尝试将反斜杠更改为单个正斜杠,但这不起作用。我应该如何更改代码以使其适用于 Mac 或两者都适用?我在下面放了一些代码。

提前致谢!

Class 为文件创建新路径:

try{
        //Create file path
        String dirpath = new ReWriterRunner().getPath()+"NewFiles";

        //Create directory if it doesn't exist
        File path = new File(dirpath);
        if (!path.exists()) {
            path.mkdir();
        }

        //Create file if it doesn't exist
        File readme = new File(dirpath+"\README.md");
        if (!readme.exists()) {
            readme.createNewFile();
        }

获取用户输入文件放置位置的方法:

public static String getPath(){
    String s;
    Scanner in = new Scanner(System.in);
    System.out.println("Enter the directory name under which the project files are stored.");
    System.out.println("Example: C:\Users\user\work\jhipstertesting)");
    System.out.println("Use double slashes when typing.");
    s = in.nextLine();
    return s;
}

此处必须使用正斜杠“/”获取文件路径。例如> 使用:

File f = new File("/Users/pavankumar/Desktop/Testing/Java.txt");
f.createNewFile();

您可以使用系统属性来识别您当前正在运行的系统.. 更多信息请访问 https://docs.oracle.com/javase/tutorial/essential/environment/sysprop.html

但我更喜欢使用 NIO。但这是你的选择

https://docs.oracle.com/javase/tutorial/essential/io/fileio.html