2009-04-30 7 views
2

Ich habe eine Variable im Code, die Dateipfad oder URL als Wert haben kann. Beispiele:Ist Dateipfad eine URL?

Es gibt also zwei Möglichkeiten, eine Datei darzustellen und ich kann sie nicht ignorieren. Wie lautet der korrekte Name für eine solche Variable: Pfad, URL, Speicherort?

Ich verwende eine API von Drittanbietern, so dass ich Semantik nicht ändern oder auf mehrere Variablen trennen kann.

Antwort

0

Wenn die Werte für Ihre Anwendung nicht undurchsichtig sind, können Sie sie besser als Klasse modellieren. Andernfalls, wenn Sie auf den Werten handeln gehen können Sie sich Code wie folgt zu schreiben finden:

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

Sie einen Teil der Funktionalität in Bezug auf die Behandlung der Werte in Ihrer Klasse falten kann, aber es ist richtig, besser zu behandeln Es ist ein unveränderlicher Werttyp.

Verwenden Sie einen aussagekräftigen Namen für Ihre Klasse wie FileLocation oder was auch immer Ihrer Nomenklatur entspricht. Es ist dann sehr natürlich, FileLocation-Variablen namens fileLocation oder inputFileLocation zu deklarieren oder sogar fl, wenn Sie schlampig sind.

0

Wenn der von Ihnen verwendete Pfad das Protokoll "file: //" enthält, dann handelt es sich tatsächlich um eine URL.

7

Die ersten beiden sind URLs, die dritte ist ein Dateipfad. Natürlich bezieht sich das Protokoll file: /// auch nur auf eine Datei.

Bei Verwendung der Uri Klasse, können Sie die IsFile und die LocalPath Eigenschaften verwenden Datei zu handhaben: /// Uris, und in diesem Fall sollten Sie es auch so nennen.

2

Persönlich würde ich die Variable in Frage „filename“ nennen

1

eine auswählen, die Sie intern mit zu beginnen verwenden werden. Wenn Sie URLs unterstützen müssen, verwenden Sie URLs intern überall und haben Sie eine Methode, mit der Sie die Variable überprüfen können, ob sie einen Dateipfad hat, und sie sofort zu einer URL zwingen.

2

in der Tat ein formaler URL-Datei: /// c | /files/someFile.dat

Urls beginnt immer mit Protokoll: // und dann Pfad + Namen, mit '/' als Trenner. evil windows IE verwenden manchmal '\', um '/' zu ersetzen, aber die formale Verwendung ist '/'.