使用 VBScript 将文本添加到文本文件

Prepend text to Text file using VBScript

我有这个脚本可以让我将文本插入文本文件,但我需要它位于文本文件的开头。该脚本当前将其添加到 .txt 文件的末尾。 我自己还不熟悉这些东西

Option Explicit
Dim objFSO, objFolder, objShell, objTextFile, objFile
Dim strDirectory, strFile, strText
strDirectory = "c:\scripts"
strFile = "\csv.txt"
strText = "sep=|"

Set objFSO = CreateObject("Scripting.FileSystemObject")

If objFSO.FolderExists(strDirectory) Then
Set objFolder = objFSO.GetFolder(strDirectory)
Else
  Set objFolder = objFSO.CreateFolder(strDirectory)
  WScript.Echo "Just created " & strDirectory
End If

If objFSO.FileExists(strDirectory & strFile) Then
   Set objFolder = objFSO.GetFolder(strDirectory)
Else
   Set objFile = objFSO.CreateTextFile(strDirectory & strFile)
   Wscript.Echo "Just created " & strDirectory & strFile
End If

set objFile = nothing
set objFolder = nothing

Const ForAppending = 8

Set objTextFile = objFSO.OpenTextFile _
(strDirectory & strFile, ForAppending, True)

objTextFile.WriteLine(strText)
objTextFile.Close

WScript.Quit

您可以将文件内容读入一个字符串,在其前面添加您的字符串,然后将所有内容写回同一个文件。

Dim sFileText
Dim sPrependText
Const ForReading = 1, ForWriting = 2

' Open file For Reading and Read All content to a variable
Set objTextFile = objFSO.OpenTextFile (strDirectory & strFile, ForReading, True)
sFileText = objTextFile.ReadAll
objTextFile.Close

' Prepend text in front of file's content
sPrependText = "sep=|"
sFileText = sPrependText & sFileText

' Open file For Writing and write text variable
Set objTextFile = objFSO.OpenTextFile (strDirectory & strFile, ForWriting, True)
objTextFile.Write sFileText
objTextFile.Close