Чтение/запись из файла с определенной строки

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
oskolok_vatbI
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 112
Зарегистрирован: 07.07.2007 (Сб) 16:13
Откуда: г. Казань

Чтение/запись из файла с определенной строки

Сообщение oskolok_vatbI » 05.01.2008 (Сб) 12:39

Есть текстовый файл, мне нужно считать из него допустим 10-ю строку, что-то в ней поменять и записать ее опять в тот же файл десятой строкой.
Я делаю примерно следующее - читаю весь файл по строкам в массив, потом заменяю нужный элемент массива, присваиваю все элементы массива переменной, которую и пишу потом в файл. Должен же наверное быть способ правильнее и проще...
P.S. Как ни странно - в поиске не нашел, хотя тема-то вроде должна быть ходовой.

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 05.01.2008 (Сб) 13:19

Вообщем правильно делаешь. Только не нужно присваивать переменной значения массива, прямо из массива и сохраняй в файл.
Также можешь читать построчно и сразу же считанную строку записывать во временный файл. А когда все сделаешь, исходный файл удаляешь, а временный переименовываешь.
Lasciate ogni speranza, voi ch'entrate.

oskolok_vatbI
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 112
Зарегистрирован: 07.07.2007 (Сб) 16:13
Откуда: г. Казань

Сообщение oskolok_vatbI » 05.01.2008 (Сб) 13:32

Спасибо, а как из массива сразу в файл сохранить ? У меня не получилось:
Код: Выделить всё
F=FreeFile
open "C:\1.txt" for output as #F
for i=1 to 10
Print #F, Str(i)
next i
close #F

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 05.01.2008 (Сб) 13:58

Str(i) - это преобразовать число в строку.
Укажи массив.
Lasciate ogni speranza, voi ch'entrate.

oskolok_vatbI
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 112
Зарегистрирован: 07.07.2007 (Сб) 16:13
Откуда: г. Казань

Сообщение oskolok_vatbI » 05.01.2008 (Сб) 15:27

Вот оно незнание операторов... Спасибо, назвал иначе - заработало.


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: SemrushBot и гости: 110

    TopList