日期:2014-05-20  浏览次数:20632 次

字符串的截取
“C:\Documents and Settings\Administrator\桌面\t.txt”

这个字符串截取一下,我只要t。 就是txt的名称,要是路径变了的话我也只需要文件名。总之无论路径是什么样,我要取到文件名。。。大神们帮帮忙。

------解决方案--------------------
Java code

String str = "C:\\Documents and Settings\\Administrator\\桌面\\t.txt";
String s = str.substring(str.lastIndexOf("\\")+1, str.lastIndexOf("."));

------解决方案--------------------
Java code

    String s="";
        String str="t.txt";
    if(!str.contains("\\"))
    s=str.substring(0,str.lastIndexOf("."));
    else
    s= str.substring(str.lastIndexOf("\\")+1, str.lastIndexOf("."));

------解决方案--------------------
你能获得“C:\Documents and Settings\Administrator\桌面\t.txt” 吗?(不管引号中间是什么)
如果能获得,得改成“..:\\....\\....\\....\\.....txt”。如果不能手动改的话就自己写一段代码插入。
String s1="……(获得的)……";
如:
String s1="woshidi dfsf\\dsff\\fsfdaa.txt";
char s[]=new char[s1.length()];
int n=0;
for(int i=0;i<s1.length();i++){//将字符串转化为字符数组

s[i]=s1.charAt(i);
}
A:{for(int i=s1.length()-1;i>=0;i--){ //判断最后一个"\"的位置
if((s1.charAt(i)<65||(s1.charAt(i)>91&&s1.charAt(i)<97)||s1.charAt(i)>123)&&s1.charAt(i)!=' '&&s1.charAt(i)!='.')
break A;
else
n++;
}}
String s2=s1.substring(s1.length()-n,s1.length()-4);
System.out.println(s2);
//s2即为文件名,大一学生,用的都是比较基本的方法。
//经验证可以实现目的
------解决方案--------------------
探讨

Java code

String s="";
String str="t.txt";
if(!str.contains("\\"))
s=str.substring(0,str.lastIndexOf("."));
else
s= str.substring(str.lastIndexOf("\\")+1, str.lastIndexO……