3

ファイル パスまたは URL を値として持つことができるコード内の変数があります。例:

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

したがって、ファイルを表すには 2 つの方法があり、いずれも無視できません。このような変数の正しい名前: パス、URL、場所は?

私はサードパーティの API を使用しているため、セマンティクスを変更したり、より多くの変数に分離したりすることはできません。

4

6 に答える 6

7

最初の 2 つは URL、3 番目はファイル パスです。もちろん、file:/// プロトコルもファイルを参照しているだけです。

Uriクラスを使用する場合は、IsFileプロパティとLocalPathプロパティを使用して file:/// Uris を処理できます。その場合は、そのような名前を付ける必要もあります。

于 2009-04-30T14:05:53.893 に答える
2

個人的には、問題の変数を「fileName」と呼びます

于 2009-04-30T14:07:04.797 に答える
2

実際、正式な URL は file:///c|/files/someFile.dat になります。

urls は常に protocol:// で始まり、次にパス + 名前で始まり、'/' が区切り文字として使用されます。邪悪な Windows IE では、「/」の代わりに「\」を使用することがありますが、正式な使用法は「/」です。

于 2009-04-30T14:12:10.837 に答える
1

最初に内部で使用するものを選択します。URL をサポートする必要がある場合は、どこでも内部的に URL を使用し、ファイル パスを取得したかどうかをチェックする変数を設定できるメソッドを用意し、すぐに URL に強制します。

于 2009-04-30T14:08:08.007 に答える
0

値がアプリケーションに対して不透明でない場合は、それらをクラスとしてモデル化する方がよい場合があります。そうしないと、値に基づいて行動するときはいつでも、次のようなコードを記述していることに気付く可能性があります。

if(variable.StartsWith( "http://")|| variable.StartsWith( "file://")){
  //URLを処理します
}
そうしないと {
  //ファイルパスを処理します
}

値の処理に関する機能の一部をクラスに組み込むこともできますが、不変の値型として扱う方が適切です。

FileLocationなどのクラスのわかりやすい名前、または命名法に適した名前を使用してください。そうすれば、fileLocationまたはinputFileLocationという名前のFileLocation変数を宣言するのが非常に自然になります。

于 2009-04-30T15:04:06.220 に答える
0

使用しているパスにプロトコル「file://」が含まれている場合、それは実際には URL です。

于 2009-04-30T14:05:13.723 に答える