Вверх ↑
Этот топик читают: Гость
Гость
Ответов: 17029
Рейтинг: 0
#1: 2010-06-27 17:39:24 правка | ЛС | профиль | цитата


Редактировалось 2 раз(а), последний 2025-01-10 10:28:59
карма: 0

0
Разработчик
Ответов: 4698
Рейтинг: 426
#2: 2010-06-27 17:45:27 ЛС | профиль | цитата
193-32-20-3.static.comgat писал(а):
числовое значение(к примеру 3167)
193-32-20-3.static.comgat писал(а):
Строка длиной 4 байта

Так определитесь,числовое значение, или строковое значение
Для справки:
Числовое значние - последовательность из 32-ух бит (= 4 байт), определяющих число, которое может быть в диапазоне от -2^31 - 1 до 2^31
Строковое значение - последовательность из символов, каждый из которых = 1 байт
То есть число например 31670 уже не уместится в 4 байта, если использовать строковое значение
карма: 10
0
Гость
Ответов: 17029
Рейтинг: 0
#3: 2010-06-27 17:50:16 правка | ЛС | профиль | цитата


Редактировалось 2 раз(а), последний 2025-01-10 10:28:59
карма: 0

0
Администрация
Ответов: 15295
Рейтинг: 1519
#4: 2010-06-27 18:16:08 ЛС | профиль | цитата
FileStream(Mode=ReadWrite) + DataToFile(Type=dtCardinal)
карма: 27
0
Ответов: 1376
Рейтинг: 198
#5: 2010-06-27 18:20:24 ЛС | профиль | цитата
193-32-20-3.static.comgat писал(а):
в огромном архиве(около 900 мб)

Тогда уж лучше SharedStream использовать
карма: 1

0
Разработчик
Ответов: 4698
Рейтинг: 426
#6: 2010-06-27 18:26:35 ЛС | профиль | цитата
foksov писал(а):
Тогда уж лучше SharedStream использовать

Не обязательно, пока архив < 2 ГБ, можно и FileStream, а если выше, то, конечно, только SharedStream (а лучше вообще не читать такие огромные файлы )
------------ Дoбавленo в 18.26:
Dilma, ты забыл подписать, что перед DataToFile надо сделать FileStream.doPosition = 4 (чтобы считывал DataToFile с 4-ого байта)
------------ Дoбавленo в 18.47:
Все, я сначала не понял тебя, foksov, извиняюсь
карма: 10
0
Ответов: 1376
Рейтинг: 198
#7: 2010-06-27 18:31:32 ЛС | профиль | цитата
А doPosition разве не с нуля начинает считать?
карма: 1

0
Разработчик
Ответов: 4698
Рейтинг: 426
#8: 2010-06-27 18:33:07 ЛС | профиль | цитата
Так надо же
193-32-20-3.static.comgat писал(а):
изменить числовое значение(к примеру 3167) в огромном архиве(около 900 мб). Значение определяет кол-во файлов в архиве. Строка длиной 4 байта. Смещение от начала файла тоже 4 байта.

карма: 10
0
Администрация
Ответов: 15295
Рейтинг: 1519
#9: 2010-06-27 18:39:09 ЛС | профиль | цитата
Assasin писал(а):
что перед DataToFile надо сделать FileStream.doPosition = 5

4
карма: 27
0
Гость
Ответов: 17029
Рейтинг: 0
#10: 2010-06-27 18:47:56 правка | ЛС | профиль | цитата


Редактировалось 2 раз(а), последний 2025-01-10 10:29:00
карма: 0

0
Гость
Ответов: 17029
Рейтинг: 0
#11: 2010-06-27 19:09:46 правка | ЛС | профиль | цитата


Редактировалось 2 раз(а), последний 2025-01-10 10:29:00
карма: 0

0
Администрация
Ответов: 15295
Рейтинг: 1519
#12: 2010-06-27 21:50:25 ЛС | профиль | цитата
метод записи информации на диск имеет смысл выбирать только при частой записи больших блоков данных (десятки мб). Если вопрос состоит только в том, как лучше скинуть в архив информацию о паре тройке файлов, то ответом тут будет - как проще и удобнее.
карма: 27
0
Гость
Ответов: 17029
Рейтинг: 0
#13: 2010-06-28 05:34:17 правка | ЛС | профиль | цитата


Редактировалось 2 раз(а), последний 2025-01-10 10:29:00
карма: 0

0
13
Сообщение
...
Прикрепленные файлы
(файлы не залиты)