VB.NET / C# 获取文件名/扩展名/大小/路径的方法

目的:读取本地的文件,获取文件的文件名、扩展名、路径

1. 首先新建个 Windows Forms Application

2. 这次多弄几个 TextBox,因为需要显示的东西比较多。 再加个 Button

3. 双击 Button

VB代码

4. 因为用到几个参数,我们需要 Import 一些 System 库文件,将下边代码添加到最最最最最上边

Imports System.IO

先说一个基本 System.IO.FileInfo 类来显示文件名、扩展名以及路径的方法
将下方代码写入 Sub 与 End Sub 之间 (如图所示)

1
2
3
4
5
6
        Dim path As String = "C:\Users\Forece\Desktop\Code.txt"
        Dim testFile As New System.IO.FileInfo(path)
        TextBox1.Text = testFile.Name
        TextBox2.Text = testFile.Extension
        TextBox3.Text = testFile.DirectoryName
        TextBox4.Text = testFile.Length.ToString() & " byte"

再附一段利用 System.IO.Path 类来显示文件名、扩展名以及路径的方法

1
2
3
4
5
        Dim fpath As String = "C:\Users\Forece\Desktop\Code.txt"
        TextBox1.Text = System.IO.Path.GetFileName(fpath)
        TextBox2.Text = Path.GetExtension(fpath)
        TextBox3.Text = Path.GetFileNameWithoutExtension(fpath)
        TextBox4.Text = Path.GetFullPath(fpath)

区别我们待会再说~~~

C# 代码

C#代码因为也需要调用 System.IO,所以我们也要加载这个库文件,还是放在所有代码的最最最最上边。

using System.IO;

System.IO.FileInfo 类来显示文件名、扩展名以及路径的方法

1
2
3
4
            string path = "C:\\Users\Forece\\Desktop\\Code.txt";
            textBox1.Text = System.IO.Path.GetFileName(path);
            textBox2.Text = System.IO.Path.GetExtension(path);
            textBox3.Text = System.IO.Path.GetFullPath(path);

System.IO.Path 类来显示文件名、扩展名以及路径的方法

1
2
3
4
5
6
            string path = @"C:\Users\Forece\Desktop\Code.txt";
            FileInfo fi1 = new FileInfo(path); //可以直接用 FileInfo 也可以用全称 System.IO.FileInfo  
            textBox1.Text = fi1.Name;
            textBox2.Text = fi1.Extension;
            textBox3.Text = fi1.DirectoryName;
            textBox4.Text = fi1.Length.ToString() + " byte";

注:可以看到路径在C#中有两种写法:一个是加@,另外一个是用双斜杠\\,两种方法都可以。

6. 测试程序

System.IO.FileInfo 和 System.IO.FileInfo 的主要区别是 Path 类针对路径以及文件信息,而 FileInfo 类,还有一些类方法,比如复制、删除文件等等,不过不在这节的讲解中。像文件大小这个属性就只能用 FileInfo 类来显示了。

通过代码,我们可以看出来,这些文件名、路径、扩展名都是通过 System.IO.FileInfo 和 System.IO.FileInfo 的各种属性参数来进行显示的,这些属性还有很多,具体请参考MSDN说明文档:

ref:
File类:http://msdn.microsoft.com/zh-cn/library/system.io.file.aspx
Directory类:http://msdn.microsoft.com/zh-cn/library/system.io.directory.aspx
Path类:http://msdn.microsoft.com/zh-cn/library/system.io.path.aspx
FileInfo类:http://msdn.microsoft.com/zh-cn/library/system.io.fileinfo.aspx
Directory类:http://msdn.microsoft.com/zh-cn/library/system.io.directoryinfo.aspx
My.Computer.FileSystem 对象:https://msdn.microsoft.com/zh-cn/library/0b485hf7(v=vs.80).aspx