请教各位大神,如何获取文件夹名

jialianqing311 2013-10-01 03:54:52
假设我有一个文件,存放于C:1\2\3下,现在获得路径为“C:1\2\3”,怎么样获得“3”这个文件夹名,谢谢!
...全文
289 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
threenewbee 2013-10-08
  • 打赏
  • 举报
回复
既然lz无法说明理由,那么按照恶意无满意答案结贴处理,关小黑屋一个月,以示警告。
threenewbee 2013-10-05
  • 打赏
  • 举报
回复
为什么无满意答案结贴?请lz说明正当理由。
小飞牛coder 2013-10-02
  • 打赏
  • 举报
回复
DirectoryInfo dir=new DirectoryInfo("F:/1/2/3"); string name=dir.Name;//这就这文件夹3的名字 不知道 你的意思是否是这样。
gclol 2013-10-01
  • 打赏
  • 举报
回复
引用 7 楼 sp1234 的回复:
可以试一下,在.net中表达一个文件的路径,即可以写为 \1\2\3 也可以写为 \1/2\3 也可以写为 /1/2\3。等等等等。 每一次我发现一个刚实习1周的学生是个正则控,只能苦笑。只能告诉他:先去理解字符串背后的格式化协议,不要纠结在眼前的字符串。
我觉得楼主的意思是:已经取得了一个文件所在的路径,现在想求最内层的文件夹名称
gclol 2013-10-01
  • 打赏
  • 举报
回复
引用 7 楼 sp1234 的回复:
可以试一下,在.net中表达一个文件的路径,即可以写为 \1\2\3 也可以写为 \1/2\3 也可以写为 /1/2\3。等等等等。 每一次我发现一个刚实习1周的学生是个正则控,只能苦笑。只能告诉他:先去理解字符串背后的格式化协议,不要纠结在眼前的字符串。
那就Regex r = new Regex(@"[^\\|/]+$"); 只有提供的是合法的路径
  • 打赏
  • 举报
回复
可以试一下,在.net中表达一个文件的路径,即可以写为 \1\2\3 也可以写为 \1/2\3 也可以写为 /1/2\3。等等等等。 每一次我发现一个刚实习1周的学生是个正则控,只能苦笑。只能告诉他:先去理解字符串背后的格式化协议,不要纠结在眼前的字符串。
  • 打赏
  • 举报
回复
晕死!正则控是多么能瞎拼凑结果啊。 我们举两个例子,文件 file:///c:/1/2/3.jpg、c:\1\"x 2"\3.jpg,考虑到了吗? 我们找一个开发人员,非常重要地是看他有没有一点基础知识,而不是看他是不是正则控。 因此我建议程序员要尽量去使用.net所封装的最靠谱的知识,例如FileInfo、DirecotoryInfo的知识,先不要急于瞎拼凑。
gclol 2013-10-01
  • 打赏
  • 举报
回复
少了个加号,代码改为

Regex r = new Regex(@"[^\\]+$");
string s = r.Match(@"C:\1\2\3").Value;
gclol 2013-10-01
  • 打赏
  • 举报
回复

            Regex r = new Regex(@"[^\\]$");
            string s = r.Match(@"C:\1\2\3").Value;
threenewbee 2013-10-01
  • 打赏
  • 举报
回复
string s = Path.GetFileName(@"C:\1\2\3");
uvvvw 2013-10-01
  • 打赏
  • 举报
回复
string aa="C:1\2\3"; string []tmp=aa.split('\\'); string rs=tmp[tmp.length-1];

110,526

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧