Вниз
Скачать: CL | DM;

Почему TFileStream.size показывает 0 если файл отрывается   Найти похожие ветки 

 
novill ©   (2006-10-12 18:07) [0]

и не пуст??? Данные из него читаются, но size как был  0 так и остается.


 
Ketmar ©   (2006-10-12 18:32) [1]

потому что ошибка в коде. или открывают вовсе не файл на локальном диске.


 
DrPass ©   (2006-10-12 18:59) [2]

Потому что у кого-то религия не позволяет посмотреть хелп или исходники, и узнать, что TFileStream.Size не обозначает размер файла... и вообще ничего не обозначает, используется только для вызова seek по файлу


 
Leonid Troyanovsky ©   (2006-10-12 19:13) [3]


> DrPass ©   (12.10.06 18:59) [2]

> или исходники, и узнать, что TFileStream.Size не обозначает
> размер файла... и вообще ничего не обозначает,


Ну, чего-то да и обозначает.
Оным можно даже размер файла изменить.
Hint: procedure THandleStream.SetSize

--
Regards, LVT.


 
Ketmar ©   (2006-10-12 19:13) [4]

угу. приходилось делать эмулятор seek для своих хитрых потоков. потому что есть гении, которые seek"ом и определяют размеры, и перекрытие сайза не спасает. %-)


 
Джо ©   (2006-10-12 19:15) [5]

> [2] DrPass ©   (12.10.06 18:59)

Пардон, где такое написано?

Написано просто:

TStream.Size
Indicates the size in bytes of the stream.
Description

Use Size to find the size of the stream. Size is used internally in routines that read and write to and from the stream. Setting the Size property of TStream does nothing. Some descendants of TStream override this property to allow applications to change the size of the resource accessed using the stream.

В исходнике TStream.GetSize еще лаконичнее:
 Pos := Seek(0, soCurrent);
 Result := Seek(0, soEnd);
 Seek(Pos, soBeginning);


 
DrPass ©   (2006-10-13 00:22) [6]

Действительно... на меня склероз напал. А почему-то был уверен, что не работает. Сорри за дезинформацию :)



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

Скачать: CL | DM;



Память: 0.46 MB
Время: -0.964 c
2-1160752903
Merry
2006-10-13 19:21
2006.10.29
TIBTable и TDataSource


3-1157109036
NotGooDP
2006-09-01 15:10
2006.10.29
Работа с Binary полем MsSQL


1-1158509750
MixAnOL
2006-09-17 20:15
2006.10.29
OLEVariant


15-1160018364
Alx_
2006-10-05 07:19
2006.10.29
Касперский. DISK BOOT FAILURE


3-1157096069
Neo Trinitron
2006-09-01 11:34
2006.10.29
Сжатие БД MS Access




   Наверх