如何拆分一个字符串(Eg:"E:\resin\doc\programe\upload\qqq")大家帮帮忙!!!在线等!!!

Explorerwg 2003-08-23 09:27:14
如何拆分一个象这样的字符串“E:\resin\doc\programe\upload\qqq”,
String type =“E:\resin\doc\programe\upload\qqq”;
String[] s = type.split("\");
好象不行,注意这里是“\";不是"/";大家帮忙看看!!!
再线等!!!
...全文
67 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
shipatrioc 2003-08-23
  • 打赏
  • 举报
回复
import java.util.StringTokenizer;
import java.io.File;
public class testSplit{
public static void main (String [] args) {
String type = "E:\\resin\\doc\\programe\\upload\\qqq";
File file = new File (type);
String path = file.getPath ();
System.out.println (path);
StringTokenizer s = new StringTokenizer (path,"\\");
while (s.hasMoreTokens ()){
System.out.println (s.nextToken ());
}
}
};
C:\>java testSplit
E:\resin\doc\programe\upload\qqq
E:
resin
doc
programe
upload
qqq
建议你碰到问题,自己先试试再问!
Explorerwg 2003-08-23
  • 打赏
  • 举报
回复
“E:\resin\doc\programe\upload\qqq”是用path = request.getRealPath("./");得到的一个文件路径,现在要将他解析出来,就是将他拆分开!String[] s = type.split("\");
好象不支持"\",怎样拆分一个windows下的路径呢???
高手帮忙啊!!!
miaoliujun 2003-08-23
  • 打赏
  • 举报
回复
支持
nomenn 2003-08-23
  • 打赏
  • 举报
回复
你在windows中,表示成E:\resin\doc\programe\upload\qqq”这样的 地址 本身就不能够成
所以 你在赋值时应该用 String type =“E:\\resin\\doc\\programe\\upload\\qqq”来表示路径
Explorerwg 2003-08-23
  • 打赏
  • 举报
回复
To: miaoliujun(傲龙)
"E:\resin\doc\programe\upload\qqq"是得到的Windows下的一个路径;
那如何将这个路径转换成“E:\\resin\\doc\\programe\\upload\\qqq”呢???
请指教!!!
miaoliujun 2003-08-23
  • 打赏
  • 举报
回复
对,楼上的很对
因为你原来的字符串就不对
shipatrioc 2003-08-23
  • 打赏
  • 举报
回复
C:\>javac testSplit.java

C:\>java testSplit
E:
resin
doc
programe
upload
qqq
shipatrioc 2003-08-23
  • 打赏
  • 举报
回复
import java.util.StringTokenizer;
public class testSplit
{
public static void main (String [] args) {
String type = "E:\\resin\\doc\\programe\\upload\\qqq";
StringTokenizer s = new StringTokenizer (type,"\\");
while (s.hasMoreTokens ())
{
System.out.println (s.nextToken ());
}
}
};
Explorerwg 2003-08-23
  • 打赏
  • 举报
回复
To: beyond_xiruo(J2EE苏鸿ASP.NET)

好象不行啊!抛出如下错误:
500 Servlet Exception
java.util.regex.PatternSyntaxException: Unexpected internal error near
index 1

at _programe._upload._upload__jsp._jspService(/programe/upload/upload.jsp:32)

String[] s = type.split("\\");在第32行;
我在Windows 2000下开发的!!!
是什么问题呢???帮忙看看!!!
希偌 2003-08-23
  • 打赏
  • 举报
回复
转义字符
String[] s = type.split("\");
-->
String[] s = type.split("\\");
shipatrioc 2003-08-23
  • 打赏
  • 举报
回复
yangtaylor(水无月烈火) 的那种写法好像不行!
我写的那个demo,你再看一下,我的path也是动态得到的,就是
”E:\resin\doc\programe\upload\qqq“,你再看看下面这个例子:
import java.util.StringTokenizer;
import java.io.File;
public class testSplit{
public static void main (String [] args) {
String type = ".";
File file = new File (type);
String path = file.getAbsolutePath ();
System.out.println (path);
StringTokenizer s = new StringTokenizer (path,"\\");
while (s.hasMoreTokens ()){
System.out.println (s.nextToken ());
}
}
};
我把它任意放到一个工作目录下:
D:\Compiere2\jboss\server\compiere\deploy>java testSplit
the path is:D:\Compiere2\jboss\server\compiere\deploy\.
the split result is:
D:
Compiere2
jboss
server
compiere
deploy
.
这个串没有什么特别的,就是里面有一个特殊字符"\",用的时候,转义就行了!
Explorerwg 2003-08-23
  • 打赏
  • 举报
回复
我通过path = request.getRealPath("./");得到的是“E:\resin\doc\programe\upload\qqq”
而不是“E:\\resin\\doc\\programe\\upload\\qqq”
我也不能从新给type付值,是String type = path;的到的;
如果能直接解析“E:\\resin\\doc\\programe\\upload\\qqq”就好了,
关键是要解析“E:\resin\doc\programe\upload\qqq”!!!
liad 2003-08-23
  • 打赏
  • 举报
回复
path = request.getRealPath("./");
String[] s = path.split("\\\\");
yangtaylor 2003-08-23
  • 打赏
  • 举报
回复
String type =“E:\\resin\\doc\\programe\\upload\\qqq”;
String[] s = type.split("\\");
这样就可以了。看来对java基础完全没有放在心上过啊。

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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