Не думаю, что это возможно.
Имейте в виду, что escape-последовательность "\n
" распознается только компилятором Java и ничего не значит иначе.
Итак, у вас есть проблема с языком пакетных файлов Windows, и, насколько я знаю, в Windows невозможно встроить NL в параметры.
Однако то, что вы могли бы сделать, это решить проблему с "\n
", упомянутой выше, и фактически заставить ваш код распознавать escape-последовательность:
param = param.replaceAll("\\n", "\n");
Символ обратной косой черты в первой строке указан в кавычках дважды, поскольку вы действительно хотите сопоставить буквенный символ обратной косой черты.
В библиотеке Apache Commons также есть функция, которая сделает это:
import org.apache.commons.lang.*;
param = StringEscapeUtils.unescapeJava(param);