Мне нужно зациклить и переставить до 2000 строк текстового файла (который всегда будет увеличиваться в размере), получить общую длину и, исходя из длины, мне нужно скопировать две записи в другой файл.Проблема в том, что на обработку всего требуется много времени.Я не уверен, что это лучший подход, но любая помощь приветствуется.
filename = "Jul2017.txt"
Set fso = CreateObject("Scripting.FileSystemObject")
Set f = fso.OpenTextFile(filename)
Do Until f.AtEndOfStream
r1 = f.ReadLine
Do Until f.AtEndOfStream
r2 = f.ReadLine
if len(r1 & r2) > 17 then
'Do something
end if
Loop
Loop
WScript.Echo "Done!"
f.Close
Это должно решить проблему с вложенностью цикла.
filename = "Jul2017.txt"
Set fso = CreateObject("Scripting.FileSystemObject")
Set f = fso.OpenTextFile(filename, 1)
For x = 1 to 2000
r1 = f.ReadLine
For z = 1 to 2000
r2 = f.ReadLine
if len(r1 & r2) > 17 then
'Do something
end if
next
next
WScript.Echo "Done!"
f.Close
Input
-----------
TMM87R2
YUU52R7VVB
VLL73IOP3
TMM54Y2
VLL21CSZ
YUU56
VLL71BVR54
...
Что мне нужно сделать:
First iteration
TMM87R2 & TMM87R2 < 17 characters ( do nothing )
TMM87R2 & YUU52R7VVB > 17 characters ( copy the lines )
TMM87R2 & VLL73IOP3 etc.
...
TMM87R2 & VLL71BVR54
Second iteration
YUU52R7VVB & TMM87R2
YUU52R7VVB & YUU52R7VVB
...
Until last iteration
VLL71BVR54 & VLL71BVR54
Каждая строка должна быть «помещена» рядом с каждой строкой в файле, и если общий размер превышает 17 символов, скопируйте две записи в другой файл.Я знаю, что зацикливаюсь 2000 раз, и это повторяется, но порядок записей имеет значение.