【发布时间】:2011-06-28 01:41:01
【问题描述】:
我在我的 strings.xml 文件中存储了一个 SQL 查询,我想使用 String.Format 在代码中构建最终字符串。 SELECT 语句使用了like,类似这样:
SELECT Field1, Field2 FROM mytable WHERE Field1 LIKE '%something%'
为了格式化我用 %1$s 替换 'something' 所以它变成:
SELECT Field1, Field2 FROM mytable WHERE Field1 LIKE \'%%1$s%\'
我用反斜杠转义单引号。但是我无法逃脱 % 符号。
如何在我的 strings.xml 文件中包含 like 语句?
【问题讨论】:
-
别忘了正确地转义 %s。
-
他们会注入到他们自己的数据库中,这里不用担心 ;)
-
好吧,即使是你自己的数据库,也有可能不小心写出做坏事的查询。或者只是编写不编译的查询。准备查询是一个好习惯。
-
虽然它比
String.format()慢,但你可以考虑改用MessageFormat()。
标签: java android string syntax