Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2006.06.25;
Скачать: [xml.tar.bz2];

Вниз

TFileStream.CopyFrom   Найти похожие ветки 

 
AlexanderMS ©   (2006-06-03 18:40) [0]

TFileStream.CopyFrom при инструкции копировании из одного потока в другой n байт копирует от текущей позиции, но почему-то всё до конца, и сохраняется файл, обрезанный сначала (после вызова метода Seek первого файлстрима), но не обрезанный с конца. Приходится устанавливать размер второго потока через SetSize. Тогда зачем нужно число байт в параметре? Что я делаю не правильно?


 
sniknik ©   (2006-06-03 18:54) [1]

> Что я делаю не правильно?
ну... я так думаю все, все неправильно, начиная с 17й строки и по 117ю. выкинуть и переписать, предварительно сверившись с  хелпом (F1)...


 
AlexanderMS ©   (2006-06-03 19:00) [2]


> предварительно сверившись с  хелпом (F1)...

В хелпе дан простой пример: копирование одного файла в другой: от нуля до Size. Только сейчас заметил, что у меня не так:

FS2 := TFileStream.Create(filename, fmopenwrite);

А нужно было:

FS2 := TFileStream.Create(filename, fmcreate);

В файле остался мусор от прежних эксперментов. Я всё понял. Спасибо.


 
DevilDevil ©   (2006-06-03 23:07) [3]

AlexanderMS ©   (03.06.06 18:40) [0]
Скорее всего помогу, если пойму, в чём проблема


 
Eraser ©   (2006-06-03 23:26) [4]


> AlexanderMS ©   (03.06.06 18:40)


> но почему-то всё до конца

см. F1
[Delphi] function CopyFrom(Source: TStream; Count: Int64): Int64;
...
CopyFrom copies Count bytes from the stream specified by Source into the stream. It then moves the current position by Count bytes, and returns the number of bytes copied.
If Count is 0, CopyFrom sets Source position to 0 before reading and then copies the entire contents of Source into the stream. If Count is greater than or less than 0, CopyFrom reads from the current position in Source.

PS показывай код.



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2006.06.25;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.009 c
15-1148989599
RomanH
2006-05-30 15:46
2006.06.25
SQL сервер TransBase


2-1149606680
vegarulez
2006-06-06 19:11
2006.06.25
Как отчистить канву в image?


2-1149741898
Roman80
2006-06-08 08:44
2006.06.25
RichEdit на последнию строку.


2-1149592300
Fiallo4ka
2006-06-06 15:11
2006.06.25
связи в таблицах


2-1149773568
XTD
2006-06-08 17:32
2006.06.25
Как программно свернуть окно ?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский