using System;
using System.IO;
namespace csmyDir
{
class MainClass
{
public static void Main (string[] args)
{
string baseDir;
if (args.Length != 1) {
Console.WriteLine ("Usage: myDir
");
return;
}
baseDir = args [0];
myDir (baseDir);
}
public static void myDir(string strBaseDir)
{
Int16 i;
DirectoryInfo di;
DirectoryInfo[] diA;
FileInfo[] fiA;
di = new DirectoryInfo (strBaseDir);
fiA = new FileInfo[0];
diA = new DirectoryInfo[0];
Console.WriteLine ();
Console.WriteLine ("myDir::Base->" + strBaseDir);
try {
fiA = di.GetFiles ();
diA = di.GetDirectories ();
} catch (Exception ex) {
string msg;
msg = ex.Message;
Console.Write ("myDir::Bad->");
Console.Write (strBaseDir);
Console.Write (",Msg->");
Console.Write (msg);
Console.WriteLine ();
}
for (i = 0; i < fiA.Length; i++) {
Console.Write ("myDir::Name->");
Console.Write (fiA [i].FullName);
Console.Write (",");
Console.Write ("Size->" + fiA [i].Length.ToString () + ",");
Console.Write ("Crea->" + fiA [i].CreationTime+",");
Console.Write ("Last->" + fiA [i].LastWriteTime);
Console.WriteLine ();
}
for (i = 0; i < diA.Length; i++) {
Console.Write ("myDir::");
Console.Write ("Name->"+diA[i].FullName+",");
Console.Write ("Size->Dir,");
Console.Write ("Crea->" + diA[i].CreationTime+",");
Console.Write ("Last->" + diA[i].LastWriteTime);
Console.WriteLine();
myDir (diA [i].FullName);
}
}
}
}
输出格式如下:
myDir::Name->D:\Program Files\Windows NT\Pinball\SOUND999.WAV,Size->6742,Crea->2
010/5/26 23:34:44,Last->2008/4/30 0:00:00
myDir::Name->D:\Program Files\Windows NT\Pinball\table.bmp,Size->339178,Crea->20
10/5/26 23:34:44,Last->2008/4/30 0:00:00
myDir::Name->D:\Program Files\Windows NT\Pinball\wavemix.inf,Size->2687,Crea->20
10/5/26 23:34:44,Last->2008/4/30 0:00:00
myDir::Name->D:\Program Files\WindowsUpdate,Size->Dir,Crea->2010/5/26 23:37:13,L
ast->2010/5/26 23:37:14
010/5/26 23:34:44,Last->2008/4/30 0:00:00
myDir::Name->D:\Program Files\Windows NT\Pinball\table.bmp,Size->339178,Crea->20
10/5/26 23:34:44,Last->2008/4/30 0:00:00
myDir::Name->D:\Program Files\Windows NT\Pinball\wavemix.inf,Size->2687,Crea->20
10/5/26 23:34:44,Last->2008/4/30 0:00:00
myDir::Name->D:\Program Files\WindowsUpdate,Size->Dir,Crea->2010/5/26 23:37:13,L
ast->2010/5/26 23:37:14
myDir::Base->D:\Program Files\WindowsUpdate
myDir::Name->D:\qycache,Size->Dir,Crea->2015/8/30 18:01:38,Last->2015/8/30 18:01
:38
myDir::Name->D:\qycache,Size->Dir,Crea->2015/8/30 18:01:38,Last->2015/8/30 18:01
:38
myDir::Base->D:\qycache
myDir::Name->D:\qycache\iqiyi.pgf,Size->720896,Crea->2015/8/30 18:01:38,Last->20
15/8/30 18:01:44
myDir::Name->D:\System Volume Information,Size->Dir,Crea->2015/5/5 23:16:38,Last
->2015/5/5 23:21:08
myDir::Name->D:\qycache\iqiyi.pgf,Size->720896,Crea->2015/8/30 18:01:38,Last->20
15/8/30 18:01:44
myDir::Name->D:\System Volume Information,Size->Dir,Crea->2015/5/5 23:16:38,Last
->2015/5/5 23:21:08
myDir::Base->D:\System Volume Information
myDir::Bad->D:\System Volume Information,Msg->对路径“D:\System Volume Informati
on”的访问被拒绝。
myDir::Bad->D:\System Volume Information,Msg->对路径“D:\System Volume Informati
on”的访问被拒绝。
D:\>
命令行:myDir <基目录>
格式:程序名::属性名称->属性内容,属性名称->属性内容,...