将.pdf/.jpg大文件上载到jffs2文件系统时,fwrite()失败。
我的设备有1024KB的空间,我正在上传500KB的.pdf文件。我的程序将上传以字节为单位进行流式传输,并将其写入jffs2文件系统。赋予fwrite()的长度与从fwrite()返回的长度(即写入的字节数)不同。它将错误号设置为-11,表示“空间不足”
发布于 2013-02-27 17:50:27
JFFS2是压缩文件系统,因此很可能显示为1024 Kb的区域实际上是device 认为至少可以压缩为2:1的512 Kb区域,这是一个典型的值。
但是由于PDF和JPEG都是压缩格式,所以不能再次压缩;尝试这样做实际上通常会扩展它们。这就是JFFS2写入失败的时候。
为了检查(如果你没有设备的规格来报告真实的物理空间),你可以尝试使用pdftk工具来获得一个未压缩的PDF。你可能会看到一个1024K的未压缩的PDF文件,或者更大的文件,上传起来没有问题……但不会有比490-500KB压缩的PDF更大的东西,因为物理空间就是不存在。
https://stackoverflow.com/questions/15108792
复制相似问题