![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() |
Haba |
![]()
Сообщение
#1
|
Группа: Пользователи Сообщений: 6 Репутация: ![]() ![]() ![]() |
Господа модераторы, прошу извинения за ругательный характер заголовка предыдущей созданной мной темой.
А теперь по сабжу. Очень прошу, помогите пожалуйста: не могу найти ни в одной справке, как из файла перекопировать данные в массив... Причём не надо писать программу, опишите только одну или две строчки (уж не знаю, сколько места эта операция занимает) того, как это делается. Заранее благодарен. |
![]() ![]() |
APAL |
![]()
Сообщение
#2
|
![]() Смотрю... ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 1 055 Пол: Мужской Реальное имя: Пшеничный Алексей Анатольевич Репутация: ![]() ![]() ![]() |
Можно так:
f - файл m - массив Код Read(f,m) или Код For i:=1 to 10 do Read(f,m[i]); или Код i:=1; While not EOF(f) do Begin Read(f,m[i]); Inc(i); End; или через BlockRead Думаю найдется еще несколько способов - все зависит от поставленной задачи. -------------------- |
Altair |
![]()
Сообщение
#3
|
![]() Ищущий истину ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 4 824 Пол: Мужской Реальное имя: Олег Репутация: ![]() ![]() ![]() |
Цитата Господа модераторы, прошу извинения за ругательный характер заголовка предыдущей созданной мной темой Во-первых не модераторы, а модератор. Во-вторых не господа, а товарищи! Господа денег требуют, а мы Цитата помогая друг другу, мы справимся с любыми трудностями! И тему я переименовал. :D По делу: ------------------------------------- Если файл тектовый, то важно знать как в нем записанны элементы массива, если посточно, то используем процедуру ReadLn, для считывания элементов в файл, а если эл-ты массива записанны в строчку через пробел, то используем Read. (процедуры в цикле "пока нет конца файла повторять" - "While Not eof(f) do") Если файл двоичный, то нужно знать его структуру. Например: F:file of byte Значит каждый эл-т файла может быть эл-том массива. Или f:file of array[1..n]; значит в файле уже записан массив, и его просто надо считать так: read(f,a), где a - массив, точно такой как в файле. ----- Т.е. для считывания из файла эл-тов надо использовать в цикле процедуры read или readln. Цитата или через BlockRead Ну если файл не типизированный, то можно, только это сложнее и не нужно для учебных задач. Это скорее для настоящих задач, т.к. используя BlockRead можно увеличить до максимума скорость чтения, если читать данные, размер которых совпадает с размером кластера. -------------------- Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С) |
APAL |
![]()
Сообщение
#4
|
![]() Смотрю... ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 1 055 Пол: Мужской Реальное имя: Пшеничный Алексей Анатольевич Репутация: ![]() ![]() ![]() |
Респект!
:D -------------------- |
Haba |
![]()
Сообщение
#5
|
Группа: Пользователи Сообщений: 6 Репутация: ![]() ![]() ![]() |
Код i:=1; While not EOF(f) do Begin Read(f,m[i]); Inc(i); End; Вот именно это мне и нужно было! Огромнейшее спасибо! Сообщение отредактировано: volvo - 22.01.2005 13:44 |
![]() ![]() |
![]() |
Текстовая версия | 20.07.2025 13:42 |