Вставить строку вверху в текстовом файле не работает с использованием VBScript - PullRequest
0 голосов
/ 16 января 2019

Мне нужно заменить заголовок новым значением заголовка, а нижний колонтитул необходимо удалить.

Введите:

Header
Value1||Value2|Value3|Value4
Value7|Value3||Value1|Value1
Value1|Value9|Value1||Value1
Value1||Value1|Value1|Value1
Value1||Value1|Value1|Value6
Footer

Мне нужно, как показано ниже:

NewHeader
Value1||Value2|Value3|Value4
Value7|Value3||Value1|Value1
Value1|Value9|Value1||Value1
Value1||Value1|Value1|Value1
Value1||Value1|Value1|Value6

Я пытаюсь сделать так:

Set oFso = CreateObject("Scripting.FileSystemObject")
Set oFile = oFso.OpenTextFile(filePath, 1, True)
strContents = Split(oFile.ReadAll, vbCrLf)
For i=0 To UBound(strContents)
   strContents(0) 'I get header and replace with my new header
Next

, но strContents(0) возвращает все значение из текстового файла. Как с этим можно справиться?

1 Ответ

0 голосов
/ 22 января 2019

Попробуйте этот код. Надеюсь, вы получите свой результат.

filePath="C:\Users\admin\Desktop\Qtpfile.txt"
strModifytest=""
Set oFso = CreateObject("Scripting.FileSystemObject")
Set oFile = oFso.OpenTextFile(filePath, 1, True)
strContents = Split(oFile.ReadAll, vbCrLf)
strModifytest=Replace(strContents(0), "Header","NewHeader") & vbCrLf
For i=1 To UBound(strContents)-1
 strModifytest=strModifytest & strContents(i) & vbCrLf 

Next

MsgBox strModifytest

Set oFso1 = CreateObject("Scripting.FileSystemObject")
Set oFile1 = oFso1.OpenTextFile(filePath, 2, True)
oFile1.Write(strModifytest)

Пожалуйста, дайте мне знать, если эта работа.

...