public class replace_char
{    public static void main(String[] args)
    {
        String sb=new String("this \"world is' changed");
        char[] c=sb.toCharArray();
        System.out.println(c);
        for(int i=0; i<c.length; i++)
        {
            if(c[i]=='\"')
            {
                c[i]='\'';
                continue;
            }
            if(c[i]=='\'')
            {
                c[i]='\"';
                continue;
            }
            
        }
        System.out.println(c); 
        sb=new String(c);
        System.out.println(sb);        
        
    }
}

解决方案 »

  1.   

    我觉得用StringTokenizer类提供的方法
    首先按照 " 将字符串断开,产生一级子串 
    然后在各个一级子串中用 " 断开,产生二级子串
    然后重新将字符串 连接起来,一级子串间用‘连接,二级子串用“连接
      

  2.   

    楼上的方法把转意符\也给处理掉了
    所以按照你的方法你的那个字符串变换后的结果为this 'world is" changed
      

  3.   

    String a = "this \"world is' changed";
    a = a.replaceAll("\\\"", "\'");
      

  4.   

    String a = "this \"world is' changed";
    a = a.replaceAll("\\\"", "\'");
    这样行吗?????
    期望高手!!!!!
      

  5.   

    "号替换成'号       String a = "this \"world is \' changed";
                        a = a.replaceAll("\"", "\'");
     '号替换成"号       String a = "this \"world is \' changed";
                        a = a.replaceAll("\'", "\"");
    这样就可以了.不用那么麻烦
      

  6.   

    如果将'号替换成"号的同时,把"号替换成'号
    yangbc(土豆块)是正解
      

  7.   

    public static String escapeSQLTags(String input) {
    if (input == null || input.length() == 0) {
    return "";
    }
    StringBuffer buf = new StringBuffer();
    char ch = ' ';
    for (int i = 0; i < input.length(); i++) {
    ch = input.charAt(i);
    if (ch == '\\') {
    buf.append("\\\\");
    } else if (ch == '\'') {
    buf.append("\'\'");
    } else {
    buf.append(ch);
    }
    }
    return buf.toString();
    }
      

  8.   

    wangw1319(于风) 兄弟,知音啊,如果向你们说的那样简单我何必多写这么几行