1楼:匿名用户
string path = system.io.path.
getdirectoryname(@"d:\123\game");string dirname = path.split('\\');dirname[dirname.
length - 1]即为最后一个目录名
2楼:polaris北斗
按“\”分隔符拆分字符串,取最后一个,注意根目录的情况"d:\"
3楼:匿名用户
string path = system.io.path.getfilename(@"d:\123\game");
//path = 561,getfilename是最简单的写法;
c++ / c# 怎么从一个路径的string获取最后一个“\”之后的字符...
4楼:空雪梦见
其实windows有一个函数叫pathfindfilename比如lptstr szfullpath = _t("c:\users\desktop\readme.txt");
那么lptstr szfile = pathfindfilename(szfullpath);
调用之后szfile就是 readme.txt 了头文件shlwapi.h,库文件shlwapi.lib多方便。
c#同理
string filename = system.io.path.getfilename("c:\users\desktop\readme.txt");
5楼:匿名用户
问的是怎么调用还是相应成员函数/方法的内部实现?
如果是问调用的话,mfc是调用cstring的成员函数,即reversefind('\\'),根据返回的索引值进行相应判断和处理。
c#是取split后的string数组的最后一个元素(string),注意处理空字符串的问题。
另外,务必注意反斜杠的转义字符表示法。
也就是说问题中的第一个字符串应该这样定义
string folder = "c:\\users\\desktop";
使用char类型的反斜杠时也应表示为'\\'
6楼:匿名用户
!!!用 indexof / lastindexof
反向搜索也许,getcharat(int index) 之类的,从字符串长度-1位置开始检索,每次索引减一
看这个char是不是 '\\',就能确定位置了
7楼:匿名用户
int p=s.length-1;
while (p>=0 && s[p]!='\') p--;
if (p>-1) path=s.substring(p, s.length-p); // 123\abc
8楼:心狂不在
使用一个while循环从字符串后面往前找找到第一个/,然后记住位置,往后拷贝字符串就好了
c#中如何分割字符串 ,例如将某个带着路径的文件名的字符串分割后只得到最后的文件名。。。
9楼:匿名用户
要是只想分析目录的话可用path类:
string fullfilename = @"c:\mydir\myfile.ext";
string directoryname = path.getdirectoryname(fullfilename );
string filename = path.getfilename(fullfilename);
string filenamewithoutext= path.getfilenamewithoutextension (fullfilename);
要是普通字符串的话用string的split方法:
string.split
10楼:酒瓶里的蚊子
有现成的函数可用:
system.io.path .getfilename( "d:/123/abc/789.exe")
返回值为789.exe
11楼:匿名用户
split('/ ')