C 中每个块复制一个文件块
我试图将一个文件分成 x 个大小为 y (以字节为单位)的块,以便我可以单独复制每个块。我怎样才能做到这一点?
I'm trying to divide a file into an x ammount of blocks of size y (in bytes), so that I can copy each block individually. How can I do that?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
尝试使用 fread 。
每次从文件中读取缓冲区中的 ysize 字节时,
Try using fread
Each time you read ysize bytes in buffer from the file.
一些 struct stat 结构中包含其他成员,这些成员在复制文件时非常有用:
如果您读取的块大小是 st_blksize 的偶数倍,您往往会更有效地读取文件。
st_blksize 失败,提供缓冲区大小的 BUFSIZ 宏。
Some struct stat structures have additional members in them that prove useful when copying files:
If the block size you read is an even multiple of st_blksize you tend to get more efficient reading of the file.
Failing st_blksize, <stdio.h> provides a BUFSIZ macro for buffer size.
要将 1024 个字符读入缓冲区:
您将完成其余的工作。
To read 1024 chars into the buffer:
You do the rest.