我对Java很新,假设我有一个包含多个内容的字符串(引号,双引号,新行等等)
我想“编码”该字符串,以便我可以安全地将其输出到JavaScript代码段中,如:
var test = '<%= myJavaString %>';
所以如果像{new}这样的myJavaString
中有任何特殊字符,例如
String myJavaString = "hello\neveryone\nof the\nworld";
我不希望我的JavaScript源代码如下:
var test = 'hello
everyone
of the
world';
任何内置函数!?
谢谢!
答案 0 :(得分:4)
查看Apache commons-lang StringEscapeUtils
类。它有一个escapeEcmaScript
方法,可以将换行符转换为\n
,还可以使用制表符,引号和双引号字符。
答案 1 :(得分:0)
好吧,我不确定你是否可以使用任何内置方法,但写一个可能不会太难。请注意,您只需将\n
替换为\\n
即可将其从“特殊”字符更改为\和n。
您可能想要使用regular expressions。可悲的是,我不是正则表达的最佳人选,所以我可能不是帮助你的最佳人选。