Je vais avoir un problème à l'aide de java.texte.MessageFormat objet.
Je suis en train de créer des instructions SQL insert. Le problème c'est que quand je fais quelque chose comme ceci:
MessageFormat messageFormat = "insert into {0} values ( '{1}', '{2}', '{3}', {4} )";
Object[] args = { str0, str1, str2, str3, str4 };
String result = messageFormat.format(args);
Je reçois ce pour la valeur de result
:
"insert into <str0> values ( {1}, {2}, {3}, <str4> )"
Comme vous pouvez le voir, le problème est que l'un des emplacements cibles qui sont entourées par des guillemets simples ne sont pas remplacés par des arguments. J'ai essayé d'utiliser les doubles guillemets simples comme ceci: ''{1}''
et les caractères échappés comme ceci: \'{1}\'
, mais il donne toujours le même résultat.
edit: j'ai oublié de mentionner que j'ai aussi essayé d' '''{1}'''
. Le résultat est: "insert into <str0> values ( '{1}', '{2}', '{3}', <str4> )"
. C'est en gardant l'original des guillemets autour de mais toujours pas d'insérer les valeurs.
Comment puis-je résoudre ce problème? Pour mémoire, je suis à l'aide du JDK 6u7.