Я хочу вставить строку в определенную позицию в текстовом файле формата «utf-8».Как вставить текст в текстовый файл с помощью VBA
пусть говорят, что содержание в файле «12367890»
теперь я хочу, чтобы вставить «45» после того, как «3», то есть в положении 3,
теперь содержание в файле становится «1234567890»
я написал какую-нибудь, но он не работает
dim str as string
Dim binaryObj As Object
str = "12367890"
Set binaryObj = CreateObject("adodb.stream")
binaryObj.Open
binaryObj.Charset = "UTF-8"
binaryObj.Type = 2
h = 0
For h = 0 To length
jpByte = Mid(jpString, h + 1, 1)
binaryObj.WriteText jpByte
Next
binaryObj.WriteText ChrW(0)
binaryObj.Position = 6
binaryObj.WriteText "4"
binaryObj.Position = 7
binaryObj.WriteText "5"
binaryObj.SaveToFile "D:\A4\Message_tool\withBom.bin", adSaveCreateOverWrite
Вместо вставки 4 и 5, они заменяются получаешь 6 & 7. output = "12345890"
Посмотрите [ 'FileSystemObject'] (http://stackoverflow.com/a/5798392/380384) и как он может быть использован для обработки текстовых файлов. – ja72
Также текстовый файл должен _never_ иметь расширение '.bin' – ja72