比如
F:\spket\2131\123.txt
我要截取
spket\2131\
应该如何做
急啊
[code="java"]
String str = "F:\spket\2131\123.txt";
int firstIndex = str.indexOf("\");
int lastIndex = str.lastIndexOf("\");
if(firstIndex != -1 && lastIndex != -1)
str = str.substring(firstIndex + 1, lastIndex + 1);
else if(firstIndex != -1 && lastIndex == -1)
str = str.substring(firstIndex + 1);
else if(firstIndex == -1 && lastIndex != -1)
str = str.substring(0, lastIndex + 1);
System.out.println(str);
[/code]
[code="java"]File file = new File("F:\spket\2131\123.txt");
String filePath = file.getParent();
String ss = filePath.substring(3);[/code]
public static void main(String args[]){
String s = "F:/spket/2131/123.txt";
s = s.replace("/", " ");
String[] ss = s.split(" ");
String sss = "";
for(int i=1;i<ss.length-1;i++)
sss+=ss[i]+"/";
System.out.println(sss);
}
String str = "F:\spket\2131\123.txt";
int firstIndex = str.indexOf("\");
int lastIndex = str.lastIndexOf("\");
if(firstIndex != -1 && lastIndex != -1)
str = str.substring(firstIndex + 1, lastIndex + 1);
else if(firstIndex != -1 && lastIndex == -1)
str = str.substring(firstIndex + 1);
else if(firstIndex == -1 && lastIndex != -1)
str = str.substring(0, lastIndex + 1);
System.out.println(str);
这段代码我觉得 第二个 ELSE IF 没有作用。可以去掉。一传字符同事返回indexOf和lastIndexOf结果是要么全有,要么全没有。不可能只有一个-1存在。
String str = "F:\spket\2131\123.txt";
System.out.println(str.substring(3, 14));
laitaogood的方法最好
yw404109794 刚刚问 菜鸟sos 如何截取第一个\的字符串
这个也是你么?
哥们 你也太 :x
huangnetian 的方法很好,不过文件分隔符弄反了 应该是:
[code="java"]
public static void main(String[] args) {
String s = "F:\spket\2131\123.txt";
s = s.replace("\", " ");
String[] ss = s.split(" ");
String sss = "";
for (int i = 1; i < ss.length - 1; i++)
sss += ss[i] + "\";
System.out.println(sss);
}
[/code]