在数据库sql语句组装中,语句中同时出现了%s、%p两个字符,用string format进行替换时,出现如下错误:java.util.UnknownFormatConversionException: Conversion = 'p'
解决方法:
1、使用String replace方法,直接对%s进行精准替换
String s = "aaa=bbb%s%%p";
// s = String.format(s, "format");
// System.out.println(s);
s = s.replace("%s", "replace");
System.out.println(s);
输出:aaa=bbbreplace%%p
2、还是使用format,在%p前面再加一个%号,问题解决
String s = "aaa=bbb%s%%p";
s = String.format(s, "format");
System.out.println(s);
输出:aaa=bbbformat%p
总结: