Вопрос № 67746: ОЧЕНЬ СРОЧНО!!!!!НУЖНА ВАША ПОМОЩЬ!!!
Уважаемые эксперты,подскажите пожалуйста как читать строки в текстовом файле,длина которых превышает 256 символов.У меня были идеи разбивать на более мелкие строки и читать по отдельности.А потом всё кон...
Вопрос № 67.746
ОЧЕНЬ СРОЧНО!!!!!НУЖНА ВАША ПОМОЩЬ!!!
Уважаемые эксперты,подскажите пожалуйста как читать строки в текстовом файле,длина которых превышает 256 символов.У меня были идеи разбивать на более мелкие строки и читать по отдельности.А потом всё конкатенировать для использование етой длинной строки в процедуре!!!Незнаю как грамотно это записать!
Помогите!!!!
Отправлен: 19.12.2006, 21:10
Вопрос задал: ВА АП РО (статус: Посетитель)
Всего ответов: 3 Мини-форум вопроса >>> (сообщений: 2)
Отвечает: Митрофанов Артем Борисович
Здравствуйте, ВА АП РО!
Строки в паскале ограничены как раз этой длиной. Единственный(точнееодин из нескольких)выходов из этой ситуации - читать в символьный массив, а точнее в запись, единственный тип данных которой - символьный массив. Часто массивы символов предпочитают строкам(но в оснвном это относится к С++)
Ответ отправил: Митрофанов Артем Борисович (статус: 6-ой класс)
Ответ отправлен: 20.12.2006, 09:08 Оценка за ответ: 4 Комментарий оценки: Не могли б вы написать фрагмент этой програмы?!!
Отвечает: sir henry
Здравствуйте, ВА АП РО!
Попробуйте вместо переменной типа String, использовать для чтения длинных строк переменную типа PChar. У PChar в Паскале, по-моему, ограничение в 38 тысяч символов. Может я слегка ошибаюсь, но примерно столько.
Откройте файл как символьный (F: File of Char) и считывайте посимвольно. Как появились символы #13 и #10, значит после них начинается новая строка.
Ответ отправил: sir henry (статус: Академик) Россия, Красноярск ---- Ответ отправлен: 20.12.2006, 16:57
Отвечает: VaNuk
Здравствуйте, ВА АП РО!
ну покрайней мере этот вариант не так уж и плох ! тем более что в документах например длинна
строки редко превышает 100 символов а во сновном это 80-50 символов !
или опиши что конкретно ты хочешь намудрить может и найдутся другие способы !
Ответ отправил: VaNuk (статус: 3-ий класс)
Ответ отправлен: 20.12.2006, 17:07