簡體   English   中英

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

[英]How to read folder path dynamically?

假設我有一條像

“ jboss /服務器/默認/部署/Product_071016.ear/Product_071016.war/web-inf/classes/”

我想使用Java讀取此路徑,並在classes文件夾內創建一個新文件。 硬編碼不是一種選擇,它必須具有適應性。

在此路徑中, Product_071016.earProduct_071016.war名稱發生更改(即,日期,月份,年份被附加在“ _”之后)。 我怎樣才能做到這一點?

根據您的要求,您可以選擇以下選項:

  1. 有一個配置文件,例如: paths.properties

    其中包含每條動態變化的路徑作為key/value對。 您可以在此處找到有關.properties文件格式的信息 關鍵是一個常數名稱。 每次路徑更改時,都應該在paths.properties中更改分配給該常量鍵的 由於您可以使用javaProperties對象來加載此配置文件,因此可以通過將其CONSTANT鍵提供給Properties對象來更改路徑。 Properties是某種程度上用於處理.properties文件的自定義Map

    您的paths.properties的內容可以像這樣:

      PATH_TO_CLASSES_FOLDER=jboss/server/Default/deploy/Product_071016.ear/Product_071016.war/web-inf/classes/ 

    因此,在使用Properties對象從.properties文件加載key/values之后,通過提供鍵PATH_TO_CLASSES_FOLDER您將獲得所需的路徑,該路徑存儲在文件中。

  2. 您可以在每個操作系統中設置一個System Variable ,然后可以使用以下代碼行在Java中讀取它的值:

     String pathToClassesFolder = System.getenv("PATH_TO_CLASSES"); 

無論使用哪種方式,您都無需在代碼中對任何動態路徑進行硬編碼,即可滿足要求。 即使您不想對配置文件的路徑進行硬編碼,也可以將兩種方式結合使用:

  1. 將配置文件的路徑定義為System Variable

  2. 讀取配置文件的路徑,然后通過Properties對象加載它,並使用PATH_TO_CLASSES_FOLDER鍵獲取classes文件夾路徑。

祝好運。

暫無
暫無

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

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