当前位置: 代码迷 >> Java相关 >> 转移字符串转换问题
  详细解决方案

转移字符串转换问题

热度:217   发布时间:2007-02-01 16:35:22.0
转移字符串转换问题
我从数据库中得到一个字符串
String url = "C:\Documents and Settings\xuefeng\桌面\小吗死了.txt";
怎样才能将字符串中的'\'转换成'/'呀?
我试过用url.replaceAll("\\","/");但是没有转换成功!
搜索更多相关的解决方案: 字符  

----------------解决方案--------------------------------------------------------
应该是

url=url.replaceAll("\\","/");

它返回的才是替换了的,

----------------解决方案--------------------------------------------------------
啊  晕!再去试试!
----------------解决方案--------------------------------------------------------
不行哦!
错误如下:
HTTP Status 500 - type Exception reportmessage description The server encountered an internal error () that prevented it from fulfilling this request.exception org.apache.jasper.JasperException: Unexpected internal error near index 1
\
^
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:370)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:291)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
newsassurancefinal.servlet.ShowSecondTitleServlet.doGet(ShowSecondTitleServlet.java:18)
javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
root cause java.util.regex.PatternSyntaxException: Unexpected internal error near index 1
\
^
java.util.regex.Pattern.error(Pattern.java:1650)
java.util.regex.Pattern.compile(Pattern.java:1403)
java.util.regex.Pattern.<init>(Pattern.java:1124)
java.util.regex.Pattern.compile(Pattern.java:817)
java.lang.String.replaceAll(String.java:2000)
org.apache.jsp.rightView_jsp._jspService(org.apache.jsp.rightView_jsp:89)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:322)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:291)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
newsassurancefinal.servlet.ShowSecondTitleServlet.doGet(ShowSecondTitleServlet.java:18)
javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
note The full stack trace of the root cause is available in the Apache Tomcat/5.5.9 logs.

偶的代码:
for (int j = 0; j < bean1.getSecondTitleList(bean0).size(); j++) //得到标题的ArrayList的长度
{
String url = bean1.getUrl(bean2); //从数据库中得到所需文件的路径(得到的路径就是我上面写的哪个!)
String url1 = url.replaceAll("\\", "/");
out.println(url1);
----------------解决方案--------------------------------------------------------
错了啦,你左边应该是正则表达式,表示"\"应该用
s=s.replaceAll("\\\\","/");
----------------解决方案--------------------------------------------------------
终于解决了!!

----------------解决方案--------------------------------------------------------
解决了就好
----------------解决方案--------------------------------------------------------

顺便问一下!好久不上论坛了!大家啊好啊!


----------------解决方案--------------------------------------------------------
自己可以在程序里写一个方法专门用于将"\"转换成"/"嘛.用String的CharAt(int)方法判断是否是"\"是就换掉,不是就忽略....
----------------解决方案--------------------------------------------------------
用正则更方便一些嘛,免得用一个循环
----------------解决方案--------------------------------------------------------
  相关解决方案