如何创建新文件,文件名递增

问题描述

我已经编写了生成随机ID并将其存储到文件的代码。然后发送包含已存储ID的数据。 然后我将其设置为循环3次。 数据成功发送了3次,但是只有一个文件,并且仅包含LAST ID。 我想拥有3个文件,分别名为1,2,3。

for (int i = 1; i <= 3; i++) {
//test data using dynamic Id at order Id
String RandomOrderId = CustomKeywords.'test.RandomStringUUID.getUuid'()
println(RandomOrderId)

//store the OrderId to file
def OrderId = new File(RunConfiguration.getProjectDir() + "/Data Files/OrderId.txt")
OrderId .newWriter().withWriter { it << RandomOrderId }
println OrderId.text

def exceldata = CustomKeywords.'test.excelfile.ReadExcelData'('Data Files/1.xlsx','testdata','Test case1','Json Data 1')
exceldata = exceldata.replace("<OrderId>",OrderId.text)
        
Order.Message('message',exceldata)

}

解决方法

File.newWriter()覆盖文件内容的问题。

替换此行:

OrderId.newWriter().withWriter { it << RandomOrderId }

具有以下内容:

OrderId.newWriter(true).withWriter { it << RandomOrderId << '\n' }

或:

OrderId.withWriterAppend{ it << RandomOrderId << '\n' }

或:

OrderId.append( RandomOrderId + '\n' )

在此处详细了解文件方法: http://docs.groovy-lang.org/latest/html/groovy-jdk/java/io/File.html

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...