rt

解决方案 »

  1.   

    String str="\\";
    System.out.println(str);
    System.out.println(str.replaceAll("\\\\","\\\\\\\\"));
      

  2.   

    str.replaceAll("\\\\","\\\\\\\\"));
      

  3.   

    String str="\\";
    System.out.println(str);
    System.out.println(str.replaceAll("\\\\","\\\\\\\\"));
    正解
      

  4.   

    replaceAll("\\","\\\\");
    明白"\"的用法就可以了!
      

  5.   

    String str="\\";
    System.out.println(str);
    System.out.println(str.replaceAll("\\\\","\\\\\\\\"));象这样是没问题的。
    但我的字符串变量由jsp页传给java类处理,
    如传进来的是str = "c:\abc\efg";

    str.replaceAll("\\","\\\\\\\\")); 会出错
      

  6.   

    str=request.getParameter("path");
    str=str.replaceAll("\\\\","\\\\\\\\"); 
    就这样没有问题的...
      

  7.   

    replaceAll("\\\\","\\\\\\\\")
    开始做错了
      

  8.   

    //lip009(深蓝忧郁) 
    //str=request.getParameter("path");
    //str=str.replaceAll("\\\\","\\\\\\\\"); 
    //就这样没有问题的...
     
    这样是没报错的, 但字符串里还是 "\".str = "c:\abc\efg"; 用上面的方法替换后还是 str = "c:\abc\efg";把字符串传给函数,由函数来实现,就可以,真奇怪
    public static String formatPath(String path)
      {
        String str = path.replaceAll("\\\\", "\\\\\\\\");    return str;
      }str = formatPath( str );str就等于 c:\\abc\\efg
      

  9.   

    str = "c:\abc\efg"; 
    这一句是会报错的...编译通不过的
    因为\在JAVA里是转义符号,在这里JAVA把\a当成了一个转义后的字符,但是\a不存在这样的转义字符,所以错了.
    而你用str=request.getParameter("path");这句从页面取的值是输出以后是c:\abc\efg这个结果,但是要放到JAVA代码里其实就是str = "c:\\abc\\efg"; 要加上转义了,所以str输出也是c:\abc\efg,和页面输入的是相同的字串.