我想从字节读取文件到字节。但我的程序在第一个打破while
用流读取文件
ifstream infile("new.pdf",ifstream::binary);
ofstream outfile("file.pdf",ofstream::binary);
char *c;
while(infile.read(c,sizeof(char)))
{
mpz_t M;
mpz_t K;
mpz_init2(M,10);
mpz_set_ui(M,(int)c);
mpz_init2(K,10);
mpz_powm(K,M,e,n);
char *x;
mpz_get_str(x,10,K);
outfile.write(x,sizeof(char));
}
infile.close();
outfile.close();
system("pause");
infile.open("file.pdf",ifstream::binary);
outfile.open("newt.pdf",ofstream::binary);
while(infile.read(c,sizeof(char)))
{
mpz_t C;
mpz_t K;
mpz_init2(K,10);
mpz_init2(C,10);
int x=(int)c;
mpz_set_ui(K,x);
mpz_powm(C,K,d,n);
char *s;
mpz_get_str(s,10,C);
outfile.write(s,sizeof(char));
}
infile.close();
outfile.close();
问题是什么?
我需要ecnrypt文件,然后加密它。 所以我决定从输入文件中读取字节,并将其写入另一个文件。
你需要更清楚地说明什么程序在做什么,为什么它是错的,你想什么做的事情。 – 2011-12-21 01:50:43
我注意到你正在使用GMP。如果你不使用mpz_set(K,mpz_t op)这样的设置在第一个while循环中设置K的值? – Neo 2011-12-21 01:51:29
这不是必须的。它没有它的作品。我已经在没有文件的程序中测试过它。 – 2011-12-21 02:03:10