这是我的问题,我想打开一个.jpg文件,并将每个字节写为以逗号分隔的十进制数字(0-255)到另一个.txt文件中.现在它应该能够使用该txt文件再次构建.jpf文件.这就是我试图这样做的方式.
#include<iostream>
#include<fstream>
using namespace std;
int main()
{
long x;
char *s;
ifstream ifs("image.jpg",ios::binary);
ifs.seekg(0,ios::end);
x=ifs.tellg();
ifs.seekg(0,ios::beg);
s=new char[x];
ifs.read(s,x);
ifs.close();
ofstream is("image.txt");
for(int i=0;i<x;i++){
is<<(unsigned int)s[i]<<",";
}
Run Code Online (Sandbox Code Playgroud)
现在这个程序创建了带有十进制数字的image.txt,如下所示,4294967295,4294967256,4294967295,4294967264,0,16,74,70,73,70,0,1,......这里有些数字似乎是4字节long,s [i]只引用一个字节,那么(int)s [i]如何返回大于255的数字.请有人帮我这个....谢谢..