Мой скрипт имеет итерацию.В первом случае он читает txt, берет первую строку и после выполнения некоторых действий (создания новой строки) записывает эту строку во временный файл, а после удаления исходного txt сохраняет временный файл с тем же именем, что иисходный текст.
На второй итерации он берет созданный текст и пытается написать новую строку в конце файла.Проблема в том, что теперь код записывает новую строку рядом с первой строкой, а не записывает ее в последней строке.
Пример:
Ожидаемый результат: 004; J2Yf; 18090023; 20200725; 00000509990; VOLVO; D; YFWfS9Z9lu06JM0Rk; D; FA; 18090023 004; J2Yf; 18090023; 20200725; 00000509990; VOLVO; D; YFW23000909009 Неверный результат: 004; J2Yf; 18090023; 20200725; 00000509990; VOLVO; D; YFWfS9Z9lu06JM0Rk; D; FA; 18090023 004; J2Yf; 18090023; 20200725; 000009;YFWfS9Z9lu06ftR78; D; FA; 18090023
Как писать в последней строке?
TIA;)
For Iterator 1 to 2
sF1 = "C:\Users\ig.ext\Desktop\Automation\Archivo.txt"
'#Opening file
Dim objFS
Dim objFile
strTemp = "C:\Users\" & Environment("UserName") & "\Desktop\Automation\Temp.txt"
Set objFS = CreateObject("Scripting.FileSystemObject")
If Iterator = 1 Then
Set objFile = objFS.OpenTextFile(sF1)
content = objFile.ReadLine
'#Creating temporal file
Set objOutFile = objFS.CreateTextFile(strTemp,True)
Else
Set objFile = objFS.OpenTextFile(sF1, 8)
End If
sResultado = "004;J2Yf;18090023;20200725;00000509990;VOLVO;D;YFWfS9Z9lu06ftR78;D;FA;18090023"
If Iterator = 1 Then
'#Write and close
objOutFile.Write(sResultado)
objOutFile.Close
objFile.Close
objFS.DeleteFile(sF1)
objFS.MoveFile strTemp,sF1
else
'#Write line and close
objFile.Writeline(sResultado)
objFile.Close
End If
Next