2009-04-30 192 views
2

我有一個代碼中的變量,可以有文件路徑或URL作爲值。示例:文件路徑是一個url嗎?

http://someDomain/someFile.dat 
file://c:\files\someFile.dat 
c:\files\someFile.dat 

所以有兩種方法來表示文件,我不能忽略它們中的任何一個。 什麼是這樣的變量的正確名稱:路徑,網址,位置?

我正在使用第三方api,所以我不能改變語義或分離到更多的變量。

回答

0

如果這些值對您的應用程序不是不透明的,您可能會發現將它們建模爲一個類會更好。否則,當你要在價值觀行事,你可能會發現自己寫這樣的代碼:

 
if (variable.StartsWith("http://") || variable.StartsWith("file://")) { 
    // Handle url 
} 
else { 
    // Handle file path 
} 

您可以摺疊一些關於治療的價值到您的類的功能,但它是正確的更好的治療它作爲一個不可變的值類型。

爲您的課程使用類似FileLocation的描述性名稱或任何適合您的術語的名稱。然後聲明名爲fileLocation或inputFileLocation的FileLocation變量,或者如果您是草率的,則會很自然。

0

如果您使用的路徑包含協議「file://」,那麼它實際上是一個url。

7

前兩個是URL,第三個是文件路徑。當然,file:///協議也只是指一個文件。

當使用Uri類時,可以使用IsFileLocalPath屬性來處理file:/// Uris,在這種情況下,您還應該像這樣命名它。

2

就個人而言,我會打電話的變量問題「文件名」

1

選取您將使用內部入手一個。如果您需要支持URL,請在任何地方內部使用URL,並且可以使用任何方法設置變量,以檢查是否有文件路徑,並立即將其強制轉換爲URL。

2

其實正式的URL將文件:/// C | /files/someFile.dat

URL始終協議://開頭,然後路徑+名稱,以 '/' 分隔符爲。 邪惡的windows IE有時用'\'來代替'/',但正式的用法是'/'。

相關問題