IO获取文件路径及扩展名等(提供Demo)
该Demo主要涉及获取文件名、目录、扩展名,以及两个字符合并为路径,CSDN的关于获取指定层目录的一个问题
(http://topic.csdn.net/u/20100201/17/958c272f-2ab7-46c2-9592-afef1ec0ea28.html)
Demo下载:http://pan.baidu.com/share/link?shareid=446013&uk=3627406265
主要运用的方法:
1、GetExtension:获取指定路径字符串的扩展名
2、GetPathRoot:获取指定路径字符串的根目录
3、GetFileName:获取指定字符串的文件名和扩展名
4、GetFileNameWithoutExtension:返回不具有扩展名的指定路径字符串的文件名
5、GetDirectoryName:获取指定路径字符串的目录信息
5、Combine:合并两个路径字符串
下面部分代码
private void btnGetFullFileName_Click(object sender, EventArgs e) { string path = cboPath.Text; string fileName = txtFileName.Text; //不使用Combine的解法 //if (path.EndsWith(@"\")) //{ // label3.Text = path + fileName; //} //else //{ // label3.Text = path + "\\" + fileName; //} //Combine:合并两个路径字符串 label9.Text = Path.Combine(path, fileName); } private void btnParentPath_Click(object sender, EventArgs e) { DirectoryInfo di = new DirectoryInfo(cboPath.Text); if (di.Parent != null) { label9.Text = di.Parent.FullName; } else { label9.Text = "已经是根目录了"; } //不使用Parent的解法 //string path = cboPath.Text; //if (path.EndsWith(@"\")) //{ // path = path.Substring(0, path.Length - 1); // label3.Text = path.Substring(0, path.LastIndexOf(@"\") + 1); //} //else //{ // label3.Text = path.Substring(0, path.LastIndexOf(@"\") + 1); //} } private void button1_Click(object sender, EventArgs e) { string str = @"C:\Documents and Settings\ty\桌面\工程测试\tttttttt\kkk\vv.txt"; //通过"\\"分割字符串后,取长度-6,即从后往前数的第六项,应文件名占用了一项,第六项实际是第五层目录 label11.Text = str.Split('\\')[str.Split('\\').Length - 6]; }
运行结果如下: