好像是这样子,试试看吧 ^_^String s = "D:\test.bat";s.replaceAll( "\\", "\\\\" );

解决方案 »

  1.   

    public String replace(String srcStr, String oldStr, String newStr) {
        int i = srcStr.indexOf(oldStr);
        StringBuffer sb = new StringBuffer();
        if (i == -1)
          return srcStr;
        sb.append(srcStr.substring(0, i) + newStr);
        if (i + oldStr.length() < srcStr.length())
          sb.append(replace(srcStr.substring(i + oldStr.length(), srcStr.length()),
                            oldStr, newStr));
        return sb.toString();
      }  调用:replace(字符串, "\\", "/");
      

  2.   

    danceflash(Wine) 的是正确的“/”只能用在非unix系统。
      

  3.   

    调用:replace(字符串, "\\", "/"); s.replaceAll( "\\", "\\\\" ); 都行!
    其实把D:\\test.bat--->D:/test.bat 也是可以的,他们的效果是一样的,不信你试!
      

  4.   

    for(int i=0;i<mystring.length();i++){
    if(mystring.charAt(i)=='\\'){
    mystring.insert(i,"\\\\");
    mystring.deleteCharAt(i);
    i++;
    }
    }
    自己写的算法!多执教先!!
      

  5.   

    对各位的指点,深表感谢,程序已基本可以调通,不过尚有一些疑惑。
    我写的程序:
    class replace{
        public static void main(String args[]){
         String s = "d:\test.bat";
         try{s = s.replaceAll("\\","\\\\");}
         catch (Exception e)
         {System.out.println(e);}
         System.out.println(s);
    }
    }
    输出为“d:      est.bat” 为何会这样?
    当然,若s = "d:\\\\test.bat",输出为"d:\\test.bat",可如果只能是d:\test.bat呢
    hxzhappy和 tomcatjava写的算法思路都不错,只是俺依然不能达到初衷:直接操作\。
      

  6.   

    String s = "D:\test.bat";s.replaceAll( "\\", "\\"+"\\");
      

  7.   

    改成这样:
    s.replaceAll("\\\\","\\\\\\\\");
      

  8.   

    主要问题是\和t组成了转义字符\t,所以没达到效果。
    改成这样:s.replaceAll("\t", "\\t");
      

  9.   

    楼上说的极是,\t是转义字符。
      故而,随意写出的String s = "D:\test.bat";居然顺利通过编译,如当初用west,可能当场就一命归西了。
      所以, 纵"\\", "\\\\","\\\\\\\\"和其他算法之巧妙,均因在下不慎而徒劳,怪只怪public String replaceAll(String regex,String replacement)
      倘若没有正则表达式,偶的\和\\其实根本不算什么。
      可惜,java引入了REs,于是,俺的设想只好成了幻想,至少目前。
      不过,D:\\test.bat--->D:/test.bat ,效果是一样的,比如下面的程序:
    class test
    {
    public static void main(String[] args)
    {
    String command = "c:/winnt/winhelp.exe";
    Runtime rt = Runtime.getRuntime();
    try{
    rt.exec(command);
    }catch(Exception e)
    {
    System.out.println("error");
    }
    }
    }
      可是,这样做,必须提醒用户输入c:/winnt/winhelp.exe之类的不规范格式,实在是美中不足。
      不知道还有没有更好的方法。
      请赐教。