方法 : ディレクトリ一覧を作成する
I/O クラスを使用してディレクトリ内で拡張子 ".exe" の付いたファイルの一覧を作成するコードの例を次に示します。
使用例
Imports System
Imports System.IO
Public Class DirectoryLister
Public Shared Sub Main(args() As String)
Dim path As String = Environment.CurrentDirectory
If args.Length > 0 Then
If Directory.Exists(args(0)) Then
path = args(0)
Else
Console.WriteLine("{0} not found; using current directory:",
args(0))
End If
End If
Dim dir As New DirectoryInfo(path)
For Each f As FileInfo In dir.GetFiles("*.exe")
Dim name As String = f.Name
Dim size As Long = f.Length
Dim creationTime As DateTime = f.CreationTime
Console.WriteLine("{0,-12:N0} {1,-20:g} {2}", size,
creationTime, name)
Next f
End Sub
End Class
using System;
using System.IO;
public class DirectoryLister
{
public static void Main(String[] args)
{
string path = Environment.CurrentDirectory;
if (args.Length > 0)
{
if (Directory.Exists(args[0]))
{
path = args[0];
}
else
{
Console.WriteLine("{0} not found; using current directory:",
args[0]);
}
}
DirectoryInfo dir = new DirectoryInfo(path);
foreach (FileInfo f in dir.GetFiles("*.exe"))
{
string name = f.Name;
long size = f.Length;
DateTime creationTime = f.CreationTime;
Console.WriteLine("{0,-12:N0} {1,-20:g} {2}", size,
creationTime, name);
}
}
}
using namespace System;
using namespace System::IO;
public ref class DirectoryLister
{
public:
static void Main(array<String^>^ args)
{
String^ path = Environment::CurrentDirectory;
if (args->Length > 0)
{
if (Directory::Exists(args[0]))
{
path = args[0];
}
else
{
Console::WriteLine("{0} not found; using current directory:",
args[0]);
}
}
DirectoryInfo^ dir = gcnew DirectoryInfo(path);
for each (FileInfo^ f in dir->GetFiles("*.exe"))
{
String^ name = f->Name;
long size = f->Length;
DateTime^ creationTime = f->CreationTime;
Console::WriteLine("{0,-12:N0} {1,-20:g} {2}", size,
creationTime, name);
}
}
};
int main()
{
DirectoryLister::Main(Environment::GetCommandLineArgs());
}
信頼性の高いプログラミング
この例では、DirectoryInfo は "." で示される現在のディレクトリです。このコードを実行すると、現在のディレクトリ内にある拡張子 .exe のすべてのファイルが、そのファイル サイズ、作成時刻、および名前と共に一覧表示されます。 C:\MyDir の \Bin サブディレクトリに .exe ファイルがいくつか存在すると仮定すると、このコードを実行した場合の出力は次のようになります。
953 7/20/2000 10:42 AM C:\MyDir\Bin\paramatt.exe
664 7/27/2000 3:11 PM C:\MyDir\Bin\tst.exe
403 8/8/2000 10:25 AM C:\MyDir\Bin\dirlist.exe
C:\ ルート ディレクトリなどの別のディレクトリ内のファイルの一覧が必要な場合は、このコードをコンパイルすることで生成される実行可能ファイルに引数 "C:\" を渡します (たとえば "testApplication.exe C:\")。
メモ |
---|
Visual Basic のユーザーは、ファイル I/O 用の FileSystem クラスに用意されているメソッドとプロパティを使用することもできます。 |
参照
処理手順
方法 : 新しく作成されたデータ ファイルに対して読み書きする