次の方法で共有


IsolatedStorageFile.GetDirectoryNames メソッド

分離ストレージのスコープ内にあり、指定したパターンと一致するディレクトリを列挙します。

Public Function GetDirectoryNames( _
   ByVal searchPattern As String _) As String()
[C#]
public string[] GetDirectoryNames(stringsearchPattern);
[C++]
public: String* GetDirectoryNames(String* searchPattern)  __gc[];
[JScript]
public function GetDirectoryNames(
   searchPattern : String) : String[];

パラメータ

  • searchPattern
    検索パターン。単一の文字を表すワイルドカード ("?") と複数の文字を表すワイルドカード ("*") の両方がサポートされています。

戻り値

分離ストレージのスコープ内にあり、 searchPattern と一致するディレクトリの相対パスの Array 。長さ 0 の配列が返された場合は、一致するディレクトリは存在しません。

例外

例外の種類 条件
ArgumentNullException searchPattern が null 参照 (Visual Basic では Nothing) です。

解説

ワイルドカード文字は、 searchPattern の最後の要素にだけ使用できます。たとえば、"directory1/*etc*" は検索文字列として有効ですが、"*etc*/directory" は無効です。

searchPattern を "Project\Data*" にすると、分離ストレージのスコープ内にある Project ディレクトリの Data から始まるすべてのサブディレクトリが返されます。 searchPattern を "*" にすると、ルートにあるすべてのディレクトリが返されます。検索文字列条件の詳細については、 Directory クラスのトピックを参照してください。

ファイル名の取得については、 GetFileNames メソッドのトピックを参照してください。

GetDirectoryNames メソッドの使用方法については、「 既存のファイルおよびディレクトリの検索 」の例を参照してください。

使用例

[Visual Basic, C#, C++] GetDirectoryNames メソッドについては、次のコード例を参照してください。この例のコンテキスト全体については、 IsolatedStorageFile の概要を参照してください。

 
Dim dirNames As [String]() = isoFile.GetDirectoryNames("*")
Dim fileNames As [String]() = isoFile.GetFileNames("*")
Dim name As String

' List directories currently in this Isolated Storage.
If dirNames.Length > 0 Then

    For Each name In dirNames
        Console.WriteLine("Directory Name: " & name)
    Next name
End If

' List the files currently in this Isolated Storage.
' The list represents all users who have personal preferences stored for this application.
If fileNames.Length > 0 Then

    For Each name In fileNames
        Console.WriteLine("File Name: " & name)
    Next name
End If

[C#] 
String [] dirNames  = isoFile.GetDirectoryNames("*");
String [] fileNames = isoFile.GetFileNames("Archive\\*");

// Delete all the files currently in the Archive directory.

if (fileNames.Length>0)
{
    for (int i=0;i<fileNames.Length;++i) 
    {
        // Delete the files.
        isoFile.DeleteFile("Archive\\" + fileNames[i]);
    }
    // Confirm that no files remain.
    fileNames = isoFile.GetFileNames("Archive\\*");
}


if (dirNames.Length>0)
{
    for (int i=0; i<dirNames.Length; ++i) 
    {
        // Delete the Archive directory.
    }
}
dirNames = isoFile.GetDirectoryNames("*");
isoFile.Remove();
            }
            catch (Exception e)
            {
Console.WriteLine(e.ToString());
            }

[C++] 
String* dirNames[]  = isoFile->GetDirectoryNames(S"*");
String* fileNames[] = isoFile->GetFileNames(S"*");

// List directories currently in this Isolated Storage.
if (dirNames->Length>0)
{
   for (int i=0;i<dirNames->Length;++i) 
   {
      Console::WriteLine(S"Directory Name: {0}", dirNames[i]);
   }
}

// List the files currently in this Isolated Storage.
// The list represents all users who have personal preferences stored for this application.
if (fileNames->Length>0)
{
   for (int i=0;i<fileNames->Length;++i) 
   {
      Console::WriteLine(S"File Name: {0}", fileNames[i]);
   }
}

[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

必要条件

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ

.NET Framework セキュリティ:

参照

IsolatedStorageFile クラス | IsolatedStorageFile メンバ | System.IO.IsolatedStorage 名前空間