将文本写入Java中指定位置的.bat文件

时间:2014-07-09 10:37:22

标签: java

我需要使用Java编辑.bat文件。

该文件包含以下文字

testrunner.bat -ParId=12810 -PsysDate=2014-07-03 "C:\SOAP METHODS\DELINQ-soapui-project.xml"

这里我有一个字符串-ParId=12810-PsysDate=2014-07-03,我需要在=符号之后编写新内容,即我需要为-ParId指定不同的值和-PsysDate变量。

3 个答案:

答案 0 :(得分:0)

重写整个文件有什么问题?

答案 1 :(得分:0)

我对正则表达式了解不多,事实上我几乎从不使用它,但你可以利用正则表达式来解决你的问题,例如:

class RegexExample {
    public static void main(String[] args) {
        String input = "testrunner.bat -ParId=12810 -PsysDate=2014-07-03 'C:\\SOAP METHODS\\DELINQ-soapui-project.xml'";
        input = input.replaceAll("ParId=[0-9]+","ParId=newValueID");
        input = input.replaceAll("PsysDate=\\w+\\-\\w+\\-\\w+","PsysDate=newValueDate");
        System.out.println(input);
    }
}

我知道它不是最有效或最漂亮的,但你可以从那里开始,但在Google中发现了很多参考文献:)

答案 2 :(得分:0)

如果文件始终包含相同的文本(没有参数),则可以执行以下操作:

String formatstr = "testrunner.bat -ParId=%d -PsysDate=%s \"C:\SOAP METHODS\DELINQ-soapui-project.xml\"";
String output = String.format(formatstr,id,datestring);
// write output to file