ユーザーが違法な文字のUnicodeの文字を入力することができるようJavaで文字列を終了する唯一の方法は"
ですが、あなたはUnicodeリテラル\u...
をチェックするウィル(Javaのコンパイルが最初に行うことは、Unicodeリテラルの検索ですそれらを正しい文字に置き換えてください)。 "
と\
の両方を許可しないと、Java文字列を終了できません。
String input = "#USER_INPUT#";
することができます:あなたは、この入力を使用しているものを言及していないが、安全な方法は、次のJavaクラスへと代わりのようなものをすることの別のファイルにユーザーの入力を保存することです
public String readUserInputFile() {
InputStream is = this.class.getClassloader.getResourceAsStream("user-input.txt");
StringBuffer text = new StringBuffer();
// read input stream into text
return text.toString();
}
:
String input = readUserInputFile();
とreadUserInputFile()
のようなものです:あなたが保存されているユーザ入力ファイルからテキストを読み取ります
このようにして、ユーザーは必要なものを入力することができ、生成されたJavaコードと交差できないユーザー入力との明確な境界があります。
すばらしい答え、ありがとう! – jms301