7

フォルダーがC:\Name\Folder\あり、その中にいくつかのファイルがあります。

そのフォルダー内のファイルの完全なファイル パスを表示する必要があります。

の形式ですべてのファイルが表示されますC:\Name\Folder\file.txt。私のコードは次のとおりです。

string[] filePaths = Directory.GetFiles(@"C:\Name\Folder\");
for (int i = 0; i < filePaths.Length; ++i) {
    string path = filePaths[i];
    Console.WriteLine(System.IO.Path.GetFileName(path));
}

ファイル名のみを出力しますが、ファイルのフル パスも出力する必要があります。

4

4 に答える 4

13

単にpath変数を出力するだけでは何が問題なのですか?

foreachところで、ステートメントを介してファイルを反復できます:

foreach(var path in Directory.GetFiles(@"C:\Name\Folder\"))
{
   Console.WriteLine(path); // full path
   Console.WriteLine(System.IO.Path.GetFileName(path)); // file name
}
于 2012-06-09T17:24:09.677 に答える
4

以下を使用して、

System.IO.Path.GetFullPath(path);
于 2012-06-09T17:20:28.400 に答える
4

Directory.GetFilesフルパスを返します。を呼び出すため、ファイル名のみが表示されますPath.GetFileNamepathフルパスが必要な場合にのみ使用してください。

于 2012-06-09T17:24:26.273 に答える
3

filePaths 内に既にパスがある場合、何のために GetFileName 呼び出しが必要ですか? とにかく、そのような情報については、必要なすべてのプロパティ (Fullpath など) を持つDirectory/FileInfo クラス
を使用する方が簡単かもしれません。

于 2012-06-09T17:22:52.733 に答える