Удаление определённого количества символов каждой строки в текстовом файле - VB
Формулировка задачи:
Добрый вечер Уважаемые Гуру!
Задача:
Есть txt файл.
Нужно удалить определённое количество символов в каждой строке.
Пример:
txt файл содержит
Нужно удалить только 6 символов (пробел это тоже символ) каждой строки
Получится так:
аваппаапаапавааапв
корпорации Стив Баллмер.
Новые сообщения [разделы
> Компьютерный форум >
апаапавааапв
ации Стив Баллмер.
сообщения [разделы
ьютерный форум >
____________________________
Желательно что бы количество символов можно было задать опционально, хоть 128=) П.С, количество строк не известно, в общем что бы скрипт работал до конца файла - до последней строки. СпасибоРешение задачи: «Удаление определённого количества символов каждой строки в текстовом файле»
textual
Листинг программы
Option Explicit Sub Main() Dim VarByte, SrcFile$, outFile$, n&, sz&, C&, nC&, WRpos& 'Скрипт удаления "C"-го кол-ва символов слева в каждой строке 'текстовых файлов с кодировкой Unicode C = 1 'Настроен на кодировку UCS-2 Little Endian (начальные байты &HFF &HFE) 'Исходный файл SrcFile = "z:\1\Bash\Xinix\1.txt" 'Результирующий (могут совпадать) outFile = "z:\1\Bash\Xinix\ret.txt" With CreateObject("ADODB.Stream") .Type = 1 'adTypeBinary .Open .LoadFromFile (SrcFile) sz = .Size VarByte = .Read(sz) .Close 'Защита от неизвестного типа кодировки If VarByte(0) <> 255 Or VarByte(1) <> 254 Then If MsgBox("Кодировка файла отличается. Продолжаем?", vbYesNo) = vbNo Then Exit Sub End If WRpos = 2 nC = C For n = 2 To sz - 1 Step 2 If nC = 0 Then VarByte(WRpos) = VarByte(n) VarByte(WRpos + 1) = VarByte(n + 1) WRpos = WRpos + 2 ElseIf VarByte(n) = 13 Then VarByte(WRpos) = 13 VarByte(WRpos + 1) = 0 VarByte(WRpos + 2) = 10 VarByte(WRpos + 3) = 0 WRpos = WRpos + 4 n = n + 2 nC = C Else nC = nC - 1 End If If VarByte(n) = 10 Then nC = C Next n ReDim Preserve VarByte(WRpos - 1) .Open .Write VarByte .SaveTofile outFile, 2 '2 - перезаписать, если существует .Close End With End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д