delphi - 我应该在 TFileStream.Create 之后调用 Source.Seek(0,soFromBeginning) 吗?

标签 delphi stream

我在很多地方(这里有一个例子:http://pascalgamedevelopment.com/archive/index.php/t-1204.html)看到人们这样做。

Embarcadero 文档没有提及创建流后文件/流中 header 的位置。

<小时/>

结论:

由于文档不保证光标的位置,因此我们应该使用“Seek=0”。即使现在光标位于文件的开头,我们也永远不知道它会如何及时改变。由于 Embarcadero 没有记录这一点,看起来他们保留更改它的权利。

最佳答案

TFileStream.Create 只是打开文件句柄,并将文件位置保留在句柄打开后 Win32 放置的位置 - 在文件的开头。

无需寻道至 0 位置;你已经在那里了。

关于delphi - 我应该在 TFileStream.Create 之后调用 Source.Seek(0,soFromBeginning) 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6801472/

相关文章:

delphi - 如何在 Delphi 中将 GIF/PNG/... 图像放在 BitBtn 上?

delphi - 如何定义TVirtualStringTree的节点出现在屏幕上?

C/C++ 流和文件

php - PHP 上的文件资源有保障吗?

java - FindBugs :"may fail to close stream ",如何解决?

android - 更改音频流媒体站时,Android应用变慢

delphi - opendialog 和 Tntopendialog 有什么区别(Delphi 7)

delphi - 如何在Delphi中播放资源中的mp3内容?

FFmpeg记录rtsp流到文件错误

delphi - 我应该使用哪一个来为 Delphi、NativeUInt 或 NativeInt 进行 64 位指针数学运算