|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
02.10.2020, 18:29 | #1 |
Пользователь
Регистрация: 29.06.2008
Сообщений: 23
|
TFileStream
Код:
Прошу помочь реализовать эту задачу через класс TFileStream. |
02.10.2020, 19:05 | #2 |
Участник клуба
Регистрация: 03.06.2009
Сообщений: 1,814
|
чего-то как-то разбираля с большими файлами, размер которых переваливает за 7-8 Гбайт.
код работает - большие файы определяет, находит и размер их выдаёт без ошибок. FileNeme = путь+ имя файла. Код:
Программирование - это единственный способ заставить компьютер делать то, что тебе хочется, а не то, что приходится.
|
02.10.2020, 19:18 | #3 | |
Пользователь
Регистрация: 29.06.2008
Сообщений: 23
|
Цитата:
|
|
03.10.2020, 10:04 | #4 |
Форумчанин
Регистрация: 13.02.2012
Сообщений: 867
|
|
03.10.2020, 12:29 | #5 |
Пользователь
Регистрация: 29.06.2008
Сообщений: 23
|
Ничего особенного. Текстовый файл содержит наборы неповторяющихся комбинаций чисел. В каждой строке такая последовательность. Всего таких наборов более 52 млн. единиц. А чтобы вытащить оттуда одну случайным образом выбранную - оказывается непростая задача.
Последний раз редактировалось cb251132; 03.10.2020 в 14:58. |
03.10.2020, 14:48 | #6 |
Пользователь
Регистрация: 29.06.2008
Сообщений: 23
|
Код:
Последний раз редактировалось cb251132; 03.10.2020 в 14:57. |
03.10.2020, 16:37 | #7 |
Старожил
Регистрация: 20.04.2008
Сообщений: 5,526
|
вар.1. предварительно обеспечить в файле одинаковый размер ВСЕХ строк.
зная размер строки задать размер буфера зная размер и номер нужной строки рассчитать позицию. вар.2. работать с TextFile Код:
программа — запись алгоритма на языке понятном транслятору
|
03.10.2020, 17:57 | #8 |
Пользователь
Регистрация: 29.06.2008
Сообщений: 23
|
Одна строка занимает минимум 17 байт, максимум 26 байт, так как состоит из сочетания символов табуляции служащих разделителем (величина постоянная 8 шт. в любой строке) и сочетаний однозначных, двузначных чисел. Одинаковый размер обеспечить невозможно.
|
03.10.2020, 18:02 | #9 |
Пользователь
Регистрация: 29.06.2008
Сообщений: 23
|
|
03.10.2020, 21:49 | #10 | |
Старожил
Регистрация: 20.04.2008
Сообщений: 5,526
|
Цитата:
Заполнять незначащие позиции можно как пробелом, так и 0. Код:
Код:
Код:
программа — запись алгоритма на языке понятном транслятору
Последний раз редактировалось evg_m; 03.10.2020 в 22:01. |
|
|
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
аналог TFileStream | JUDAS | C++ Builder | 5 | 14.06.2015 20:25 |
TFileStream | Baburek | C++ Builder | 3 | 04.07.2013 10:13 |
проблемы с TFileStream | andrey4623 | Общие вопросы Delphi | 9 | 01.11.2007 20:44 |
TFilestream | UnD)eaD)Snake | Win Api | 1 | 27.09.2007 21:22 |