RainbowC0 2022-08-09 15:11 采纳率: 60%
浏览 94

Java 如何将字符串转为源字符串代码?

是这样的,我需要通过 Java 执行代码字符串。我得到了一个字符串作为参数,现在要把这个字符串作为内部字符串代码的参数,涉及到诸多转义问题。请问有一步到位的办法吗?
比如:

public void exec(String cmd){
    ...
}

public void main(String[] argv){
    String c=getText();
    exec("System.out.println(\\"" + c + "\\");");
}

如果c中没有特殊字符还好,如果有\n之类的特殊字符,肯定会导致错误。所以我想把这些特殊字符还原。最好不要用replace

  • 写回答

2条回答 默认 最新

  • zlebhs 2022-08-09 15:56
    关注

    替换却不用replace?那岂不是自己去实现一个replace?或者说你自己循环判断一下你所要去除的特殊字符。
    至于你说的想执行“源字符串代码”,大体思路分两种

    1. 把你的字符串代码写入某个文件,再给他加上类,主函数,然后编译,执行,和你自己写差不多
    2. 使用一些工具来直接运行,如apache的jexl3
    评论

报告相同问题?

问题事件

  • 创建了问题 8月9日