file path Windows format to java format

后端 未结 5 722
走了就别回头了
走了就别回头了 2020-11-30 03:49

I need to convert the file path in windows say C:\\Documents and Settings\\Manoj\\Desktop for java as C:/Documents and Settings/Manoj/Desktop .

Is there any utilit

相关标签:
5条回答
  • 2020-11-30 04:22
    String path = "C:\\Documents and Settings\\someDir";
    path = path.replaceAll("\\\\", "/");
    

    In Windows you should use four backslash but not two.

    0 讨论(0)
  • 2020-11-30 04:24
    String path = "C:\\Documents and Settings\\Manoj\\Desktop";
    path = path.replace("\\", "/");
    // or
    path = path.replaceAll("\\\\", "/");
    

    Find more details in the Docs

    0 讨论(0)
  • 2020-11-30 04:35
    String path = "C:\\Documents and Settings\\Manoj\\Desktop";
    String javaPath = path.replace("\\", "/"); // Create a new variable
    

    or

    path = path.replace("\\", "/"); // Just use the existing variable
    

    Strings are immutable. Once they are created, you can't change them. This means replace returns a new String where the target("\\") is replaced by the replacement("/"). Simply calling replace will not change path.

    The difference between replaceAll and replace is that replaceAll will search for a regex, replace doesn't.

    0 讨论(0)
  • 2020-11-30 04:38

    Just check

    in MacOS

    File directory = new File("/Users/sivo03/eclipse-workspace/For4DC/AutomationReportBackup/"+dir);
    File directoryApache = new File("/Users/sivo03/Automation/apache-tomcat-9.0.22/webapps/AutomationReport/"+dir); 
    

    and same we use in windows

    File directory = new File("C:\\Program Files (x86)\\Jenkins\\workspace\\BrokenLinkCheckerALL\\AutomationReportBackup\\"+dir);
    File directoryApache = new File("C:\\Users\\Admin\\Downloads\\Automation\\apache-tomcat-9.0.26\\webapps\\AutomationReports\\"+dir);
    
    

    use double backslash instead of single frontslash

    so no need any converter tool just use find and replace

    "C:\Documents and Settings\Manoj\Desktop" to "C:\\Documents and Settings\\Manoj\\Desktop"

    0 讨论(0)
  • 2020-11-30 04:46

    Java 7 and up supports the Path class (in java.nio package). You can use this class to convert a string-path to one that works for your current OS.

    Using:

    Paths.get("\\folder\\subfolder").toString()
    

    on a Unix machine, will give you /folder/subfolder. Also works the other way around.

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

    0 讨论(0)
提交回复
热议问题