using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using System.IO; namespace GetSystemDirectory { public partial class Form1 : Form { public Form1() { InitializeComponent(); FillTree(this.treeView1, true); this.saveFileDialog1.Filter = "(*.txt)|*.txt";
} private void FillTree(TreeView treeView, bool isSource) { treeView.Nodes.Clear(); string[] strDrives = Environment.GetLogicalDrives(); foreach (string rootDirectoryName in strDrives) { try { DirectoryInfo dir = new DirectoryInfo(rootDirectoryName); if (dir.Exists == true) { TreeNode newNode = new TreeNode(rootDirectoryName); treeView.Nodes.Add(newNode); if (isSource) { GetSubDirectoryNodes(newNode, newNode.Text, true); } else { GetSubDirectoryNodes(newNode, newNode.Text, false); } } } catch(Exception exc) { MessageBox.Show(exc.Message); } } } private void GetSubDirectoryNodes(TreeNode parent, string fullName, bool getFileNames) { DirectoryInfo dir = new DirectoryInfo(fullName); DirectoryInfo[] subDirs = dir.GetDirectories(); foreach (DirectoryInfo subDir in subDirs) { if ((subDir.Attributes & FileAttributes.Hidden) != 0) { continue; } TreeNode subNode = new TreeNode(subDir.Name); parent.Nodes.Add(subNode); GetSubDirectoryNodes(subNode, subDir.FullName, getFileNames); } if (getFileNames) { FileInfo []files=dir.GetFiles(); foreach (FileInfo file in files) { TreeNode fileNode = new TreeNode(file.Name); parent.Nodes.Add(fileNode); } } } private void button1_Click(object sender, EventArgs e) { TreeNode selectNode = this.treeView1.SelectedNode; DirectoryInfo info = new DirectoryInfo(selectNode.FullPath); string[] strArray = new string[4]; strArray[0] = "完整目录:"+"\n"+info.FullName; strArray[1] = "创建时间:"+"\n"+info.CreationTime.ToString(); strArray[2] ="最近访问时间:"+"\n"+ info.LastAccessTime.ToString(); strArray[3] = "最近写入时间:"+"\n"+info.LastWriteTime.ToString(); this.richTextBox1.Lines = strArray; DateTime nowDate = new DateTime(); nowDate = DateTime.Now; this.richTextBox1.Text =this.richTextBox1.Text+"\n"+"当前时间:"+"\n"+ nowDate.ToString();
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.IO;
namespace GetSystemDirectory
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
FillTree(this.treeView1, true);
this.saveFileDialog1.Filter = "(*.txt)|*.txt";
} private void FillTree(TreeView treeView, bool isSource)
{
treeView.Nodes.Clear();
string[] strDrives = Environment.GetLogicalDrives();
foreach (string rootDirectoryName in strDrives)
{
try
{
DirectoryInfo dir = new DirectoryInfo(rootDirectoryName);
if (dir.Exists == true)
{
TreeNode newNode = new TreeNode(rootDirectoryName);
treeView.Nodes.Add(newNode);
if (isSource)
{
GetSubDirectoryNodes(newNode, newNode.Text, true); }
else
{
GetSubDirectoryNodes(newNode, newNode.Text, false);
}
}
}
catch(Exception exc)
{
MessageBox.Show(exc.Message);
}
}
} private void GetSubDirectoryNodes(TreeNode parent, string fullName, bool getFileNames)
{
DirectoryInfo dir = new DirectoryInfo(fullName);
DirectoryInfo[] subDirs = dir.GetDirectories(); foreach (DirectoryInfo subDir in subDirs)
{
if ((subDir.Attributes & FileAttributes.Hidden) != 0)
{
continue;
} TreeNode subNode = new TreeNode(subDir.Name);
parent.Nodes.Add(subNode); GetSubDirectoryNodes(subNode, subDir.FullName, getFileNames);
} if (getFileNames)
{
FileInfo []files=dir.GetFiles();
foreach (FileInfo file in files)
{
TreeNode fileNode = new TreeNode(file.Name);
parent.Nodes.Add(fileNode);
}
}
} private void button1_Click(object sender, EventArgs e)
{
TreeNode selectNode = this.treeView1.SelectedNode;
DirectoryInfo info = new DirectoryInfo(selectNode.FullPath); string[] strArray = new string[4];
strArray[0] = "完整目录:"+"\n"+info.FullName;
strArray[1] = "创建时间:"+"\n"+info.CreationTime.ToString();
strArray[2] ="最近访问时间:"+"\n"+ info.LastAccessTime.ToString();
strArray[3] = "最近写入时间:"+"\n"+info.LastWriteTime.ToString(); this.richTextBox1.Lines = strArray; DateTime nowDate = new DateTime();
nowDate = DateTime.Now;
this.richTextBox1.Text =this.richTextBox1.Text+"\n"+"当前时间:"+"\n"+ nowDate.ToString();
} private void button2_Click(object sender, EventArgs e)
{
this.richTextBox1.Text = "";
} private void button4_Click(object sender, EventArgs e)
{
if (this.saveFileDialog1.ShowDialog() == DialogResult.OK)
{
this.richTextBox1.SaveFile(this.saveFileDialog1.FileName, RichTextBoxStreamType.PlainText);
}
} private void button3_Click(object sender, EventArgs e)
{
this.Close();
}
}
}