Замена символа в строке - VB

Узнай цену своей работы

Формулировка задачи:

Всем добрый день. Помогите пожалуйста с кодом ) Есть файл в txt-формате. В нем несколько сотен строк. В каждой строке число, перевод на другую строку записан через enter. Нужно заменить n-символ по порядку слева на другой.

Решение задачи: «Замена символа в строке»

textual
Листинг программы
Sub Task(fname As String, n As Long, newSym As String)
   ff% = FreeFile ' номер файла
   Open fname For Binary Access Read Write As #ff% ' открываем в двоичном режиме для чтения и записи
   lf& = LOF(ff%) ' получаем длину файла
   Buf$ = Space$(lf&) ' выделяем буфер
   Get #ff%, , Buf$ ' читаем файл целиком
   p& = 1 ' указатель символа
   Do
      k& = InStr(p&, Buf$, Chr$(13)) ' первое вхождение конца строки (с p-й позиции)
      If k& = 0 Then Exit Do ' если строка последняя - выход
      Mid$(Buf$, p& + n - 1, 1) = newSym ' меняем символ в нужном месте
      p& = k& + 2 ' корректируем позицию
   Loop ' конец цикла
   Seek #ff%, 1 ' позиционируем файловый указатель на начало файла
   Put #ff%, , Buf$ ' выводим буфер
   Close #ff% ' закрываем файл
End Sub
 
 
Sub Test()
     HomeDir$ = ThisWorkbook.Path
     Task HomeDir$ + "\f1.txt", 3, "*"
     Task HomeDir$ + "\f2.txt", 5, "*"
 End Sub

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 4.1 из 5
Похожие ответы