Страница: 1 |
Страница: 1 |
Вопрос: Line Input
Добавлено: 28.06.04 10:59
Автор вопроса: Calhoon | Web-сайт:
Такой трабл: когда читаю из файла Line Input'ом, то, когда встречается символ Chr(26), прога выдает ошибку. Нужно читать файл построчно и чтоб ошибок не было.
Ответы
Всего ответов: 10
Номер ответа: 1
Автор ответа:
dNW
Вопросов: 30
Ответов: 683
Профиль | | #1
Добавлено: 28.06.04 11:25
А ты попробуй считать все и убрать Chr(26) Replace'ом
Номер ответа: 2
Автор ответа:
sne
Разработчик Offline Client
ICQ: 233286456
Вопросов: 34
Ответов: 5445
Web-сайт:
Профиль | | #2
Добавлено: 28.06.04 12:17
хе, если считать все, то проще считать все, а потом разбить на массив строк...
sArr()=Split(sFileText, vbCrLf)
Номер ответа: 3
Автор ответа:
dNW
Вопросов: 30
Ответов: 683
Профиль | | #3
Добавлено: 28.06.04 13:57
Я это и имел ввиду
Номер ответа: 4
Автор ответа:
Calhoon
ICQ: 789764
Вопросов: 90
Ответов: 230
Web-сайт:
Профиль | | #4
Добавлено: 29.06.04 04:43
Нет, мне надо прочитать строку, обработать, потом читать следущую, и т.д. Кроме того, файл же большой может быть - есть ли смысл забивать память большим String?
Номер ответа: 5
Автор ответа:
Calhoon
ICQ: 789764
Вопросов: 90
Ответов: 230
Web-сайт:
Профиль | | #5
Добавлено: 29.06.04 09:07
ОК, еще проблема: не могу прочитать файл полностью... Как это сделать?
Номер ответа: 6
Автор ответа:
sne
Разработчик Offline Client
ICQ: 233286456
Вопросов: 34
Ответов: 5445
Web-сайт:
Профиль | | #6
Добавлено: 29.06.04 09:56
> смысл забивать память большим String?
Пусть на это требуется больше памяти, но это будет куда быстрее чем считывать файл по лайнам...
> Как это сделать?
dim nf as integer, sBuffer
nf=FreeFile
Open sFileName for Binary Access Read Lock Write As nf
sBuffer = Space$(LOF(nf))
get nf, vbnull, sBuffer
Close nf
Номер ответа: 7
Автор ответа:
Calhoon
ICQ: 789764
Вопросов: 90
Ответов: 230
Web-сайт:
Профиль | | #7
Добавлено: 30.06.04 05:36
ОК, заодно такой вопрос: когда создается переменная наподобие Integer, то ВБ отводит какое-то (не помню точно) количество памяти под эту переменную. Создавая String, память резервируется? Если да, то сколько? Есть ли предел строковой переменной, кроме забивание памяти до отказа?
Номер ответа: 8
Автор ответа:
sne
Разработчик Offline Client
ICQ: 233286456
Вопросов: 34
Ответов: 5445
Web-сайт:
Профиль | | #8
Добавлено: 30.06.04 11:43
реального предела нет... хотя возможно и есть... теоретически это 2 Гб... а уж там, как память позволит...
Номер ответа: 9
Автор ответа:
Calhoon
ICQ: 789764
Вопросов: 90
Ответов: 230
Web-сайт:
Профиль | | #9
Добавлено: 03.07.04 17:14
Это ясно, но память при обьявлении резервируется?
Номер ответа: 10
Автор ответа:
sne
Разработчик Offline Client
ICQ: 233286456
Вопросов: 34
Ответов: 5445
Web-сайт:
Профиль | | #10
Добавлено: 04.07.04 00:07
Она не резервируется, если конечно жетско не объявить что-то типа:
dim bt(1024) as Byte
dim str as string * 1024
память при изменении строки динамически добавляется/удаляется...