【发布时间】:2015-11-10 10:35:36
【问题描述】:
现在我尝试读取文件,打开文件的代码:
ifstream inputFile("pic.jpg", ios::in | ios::binary);
ofstream outFile("pic2.jpg", ios::out | ios::binary);
ofstream outFileTXT("pic2.txt", ios::out | ios::binary);
然后我从 inpuFile 读取 256 个字节并写入 outFile 和 outFileTXT。
尺寸问题,我的意思是: pic.jpg = 11,126 字节。 pic2.jpg = pic2.txt = 4,966 字节。
这是我的读取缓冲区,
char buffer[257];
我的代码在 *.txt 上运行良好(没问题)。
对于 11,126 字节需要 43 次读取(256 字节)+ 还有什么 ..
跑 43 次 ..
while (i++ < mod) {
// read from binary file 256 byte
in.read(buffer, 256);
// init packet and save it in list by string.
handler << buffer; // this line save buffer in list<string>
}
然后我将我的列表打印到文件中。
这个想法是:保存缓冲区(大小 256 字节)除了最后一个(118 bytes) 到列表中,意味着列表的大小必须为 44、43 (256 字节) + 1 (118 字节)
然后将列表打印到文件中。
【问题讨论】:
-
也许显示你的代码?
-
告诉我们你的代码做了什么实际上并没有告诉我们它做了什么,它告诉我们你认为它做了什么。我们需要查看代码本身。
-
我无法添加我的代码,因为这是家庭作业!寻找新的添加。