|
Основной форум Сюда все проблемы связанные с программированием. |
17.07.2007, 23:25
|
#1
|
Знающий
Регистрация: 10.08.2006
Сообщений: 254
Написано 3 полезных сообщений (для 3 пользователей)
|
Возможно ли?..
Вопрос скорее концептуального характера, и ближе к яве, но все таки...
Предположим в ФС телефона есть файлик развером 2-3 мегабайта...
Можно ли открыть его таким образом, чтобы считать только определенную его часть, например 100 кб?..
Тоесть чтобы полностью не загружать его в память...
|
(Offline)
|
|
17.07.2007, 23:37
|
#2
|
Разработчик
Регистрация: 23.08.2006
Сообщений: 586
Написано 6 полезных сообщений (для 7 пользователей)
|
Re: Возможно ли?..
Врядли. если только цепочко бит будет правельной то можно
__________________
Никто не запомнит тебя за твои мысли...
|
(Offline)
|
|
18.07.2007, 14:10
|
#3
|
Знающий
Регистрация: 10.08.2006
Сообщений: 254
Написано 3 полезных сообщений (для 3 пользователей)
|
Re: Возможно ли?..
Имеется ввиду если заранее известно с какого смещения нужно читать...
Ну или как вариант читать только нужные байты...
|
(Offline)
|
|
18.07.2007, 14:43
|
#4
|
Оптимист
Регистрация: 07.01.2006
Сообщений: 961
Написано 105 полезных сообщений (для 259 пользователей)
|
Re: Возможно ли?..
по идее, если ява машина телефона сделана правильно она буферирует в память только часть файла при чтении через InputStream. Т.е. если в библиотеку ФС добавить возможность читать из файла как из Resource, то можно пролистать файл до нужного места кусками.
|
(Offline)
|
|
18.07.2007, 18:39
|
#5
|
Модератор
Регистрация: 03.04.2007
Сообщений: 2,252
Написано 597 полезных сообщений (для 817 пользователей)
|
Re: Возможно ли?..
Можно посмотреть, как это реализовано в ReadManiac-он грузит любые файлы, даже больше объема памяти(подгружает текст динамически, кусками).
|
(Offline)
|
|
19.07.2007, 12:54
|
#6
|
Знающий
Регистрация: 10.08.2006
Сообщений: 254
Написано 3 полезных сообщений (для 3 пользователей)
|
Re: Возможно ли?..
Сообщение от ViNT
Можно посмотреть, как это реализовано в ReadManiac-он грузит любые файлы, даже больше объема памяти(подгружает текст динамически, кусками).
|
Вот это именно то, что мне нужно...
|
(Offline)
|
|
19.07.2007, 13:46
|
#7
|
Оптимист
Регистрация: 07.01.2006
Сообщений: 961
Написано 105 полезных сообщений (для 259 пользователей)
|
Re: Возможно ли?..
ReadManiac работает по такому же принципу. У него абстрактный класс для чтения, а на него уже навешаны классы чтения из RMS, ФС и непосредственно из zip архива под конкретную задачу
|
(Offline)
|
|
19.07.2007, 15:42
|
#8
|
Модератор
Регистрация: 03.04.2007
Сообщений: 2,252
Написано 597 полезных сообщений (для 817 пользователей)
|
Re: Возможно ли?..
А нельзя в InputStream просто выставить смещение, с которого начинать чтение(как в Delphi у TFileStream)?
|
(Offline)
|
|
19.07.2007, 18:50
|
#9
|
Знающий
Регистрация: 10.08.2006
Сообщений: 254
Написано 3 полезных сообщений (для 3 пользователей)
|
Re: Возможно ли?..
Кхм... А можно это как то осветить на уровне кода?...
|
(Offline)
|
|
20.07.2007, 11:12
|
#10
|
Оптимист
Регистрация: 07.01.2006
Сообщений: 961
Написано 105 полезных сообщений (для 259 пользователей)
|
Re: Возможно ли?..
Сообщение от ViNT
А нельзя в InputStream просто выставить смещение, с которого начинать чтение(как в Delphi у TFileStream)?
|
Потоки по идее поддерживают seek(смещение), но здесь все очень сильно зависит от производителя. Есть такие реализации где это самое смещение производится простым чтением побайтно просто самой системой, и соответственно с ужасной скоростью.ЗЫ: добавлю в библиотеку jsr75i
|
(Offline)
|
|
20.07.2007, 18:53
|
#11
|
Знающий
Регистрация: 10.08.2006
Сообщений: 254
Написано 3 полезных сообщений (для 3 пользователей)
|
Re: Возможно ли?..
Сенкс, буду ждать
|
(Offline)
|
|
23.07.2007, 01:20
|
#12
|
Оптимист
Регистрация: 07.01.2006
Сообщений: 961
Написано 105 полезных сообщений (для 259 пользователей)
|
Re: Возможно ли?..
обновил либу jsr75i:
добавил get_stream:resource можно читать из файла как из ресурса.
skip и reset там уже были.
|
(Offline)
|
|
23.07.2007, 04:11
|
#13
|
Знающий
Регистрация: 10.08.2006
Сообщений: 254
Написано 3 полезных сообщений (для 3 пользователей)
|
Re: Возможно ли?..
Гранд мерси, то что нужно было..
|
(Offline)
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 16:09.
|