簡體   English   中英

如何動態獲取文件夾路徑?

[英]How to get a folder path dynamically?

我已編譯文件的文件夾中有一個Business文件夾(e:\\ Business)。我要在主程序中使用此文件夾。我的主程序位於Main文件夾(e:\\ ProjectFile \\ Main)中。

我想動態獲取Business文件夾的路徑。我使用此語句,但不起作用:

String loadedClassPath = System.getProperty("user.dir")+System.getProperty("file.separator")+"Business";

            File operatorFile = new File(loadedClassPath);
            URL operatorFilePath = operatorFile.toURL();          
            URL[] operatorFilePaths = new URL[]{operatorFilePath};
            ClassLoader operatorsClassLoader = new URLClassLoader(operatorFilePaths);
            Class[] operatorClass = new Class[]{ operatorsClassLoader.loadClass("Plus"), operatorsClassLoader.loadClass("Minus"),operatorsClassLoader.loadClass("Multiply") , operatorsClassLoader.loadClass("Divide") }; 

我認為這部分不正確:

String loadedClassPath = System.getProperty("user.dir")+System.getProperty("file.separator")+"Business";

誰能幫我?

由於“E:\\企業”是完全無關

  • 您的Java代碼的位置
  • 您的主目錄(user.dir)
  • 任何其他眾所周知的Windows或Java目錄

您必須告訴程序它在哪里/在哪里。

一些選項是:

  1. Java程序中的硬代碼。 不好
  2. 作為參數傳遞給main
  3. 存儲在位於上述目錄的一個屬性文件。

可能有更多的選項,但是選項3很常見,選項2不太常見,但根據情況可能是更好的選擇, 強烈不建議使用選項1。


注意:在構造路徑/文件名時,請使用new File(parent, child) ,或者更好的是,使用較新的Paths.get(first, more, ...)
“較新”指的是Java 7,意味着自2011年7月28日以來,因此不再是新的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM