欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

C#获得文件属性信息的实现方法

程序员文章站 2024-02-20 22:21:16
本文实例演示了用visual c#获取任意文件的属性信息,这些属性信息包括文件名、创建时间、访问时间、最后写入时间等等。本实例需要用到 fileinfo 类。 filein...

本文实例演示了用visual c#获取任意文件的属性信息,这些属性信息包括文件名、创建时间、访问时间、最后写入时间等等。本实例需要用到 fileinfo 类。 fileinfo 类用于提供创建、复制、删除、移动和打开文件的实例方法,并且帮助创建 filestream 对象。

主要功能代码如下:

using system;
using system.drawing;
using system.collections;
using system.componentmodel;
using system.windows.forms;
using system.data;
using system.io;
namespace 获取文件属性
{
 public class form1 : system.windows.forms.form
 {
 private system.windows.forms.listbox listbox1;
 private system.windows.forms.button button1;
 private system.windows.forms.openfiledialog openfiledialog1;
 private system.componentmodel.container components = null;
 public void additem(string sitem)
 {
  listbox1.items.add(sitem); // 添加项 sitem 到 listbox1 中
 }
 public form1()
 {
  initializecomponent();
 }
 protected override void dispose( bool disposing )
 {
  if( disposing )
  {
  if (components != null)
  {
   components.dispose();
  }
  }
  base.dispose( disposing );
 }
 #region windows 窗体设计器生成的代码
 private void initializecomponent()
 {
  this.listbox1 = new system.windows.forms.listbox();
  this.button1 = new system.windows.forms.button();
  this.openfiledialog1 = new system.windows.forms.openfiledialog();
  this.suspendlayout();
  // listbox1
  this.listbox1.itemheight = 12;
  this.listbox1.location = new system.drawing.point(8, 56);
  this.listbox1.name = "listbox1";
  this.listbox1.size = new system.drawing.size(272, 208);
  this.listbox1.tabindex = 0;
  // button1
  this.button1.location = new system.drawing.point(96, 8);
  this.button1.name = "button1";
  this.button1.size = new system.drawing.size(96, 32);
  this.button1.tabindex = 1;
  this.button1.text = "请选择文件";
  this.button1.click += new system.eventhandler(this.button1_click);
  // form1
  this.autoscalebasesize = new system.drawing.size(6, 14);
  this.clientsize = new system.drawing.size(292, 273);
  this.controls.add(this.button1);
  this.controls.add(this.listbox1);
  this.name = "form1";
  this.text = "获取文件属性";
  this.resumelayout(false);
 }
 #endregion
 [stathread]
 static void main()
 {
  application.run(new form1());
 }
 private void button1_click(object sender, system.eventargs e)
 {
  if(this.openfiledialog1.showdialog() == dialogresult.ok)
  {
  // 清除 listbox1 中所有的项
  listbox1.items.clear();
  fileinfo file = new fileinfo(this.openfiledialog1.filename);
  // 向 listbox 中一次添加一个项,通过防止该控件绘图来维护性能,
  // 直到调用 endupdate 方法为止
  listbox1.beginupdate();
  // 获取文件名
  additem("文件名 : " + file.name);
  // 获取文件的长度
  additem("文件长度(bytes) : " + file.length);
  // 获取当前 filesysteminfo 对象的创建时间
  additem("创建时间 : " + file.creationtime.tostring());
  // 获取上次访问当前文件或目录的时间
  additem("最后访问时间 : " + file.lastaccesstime.tostring());
  // 获取上次写入当前文件或目录的时间
  additem("最后写入时间 : " + file.lastwritetime.tostring());
  listbox1.endupdate();
  }
 }
 }
}

本例演示了功能代码的主体部分,读者可以根据自己的要求进一步完善其窗体界面与功能。