0
我有一個簡單的「加密」函數,它與wstring
變量一起使用,我想用wofstream
將此函數的結果寫入文件。將加密的wstring寫入wofstream
這是我的代碼:
void save_file() {
wstring text = L"Text to be encrypted. The text is encrypted but not saved";
wstring enctext = encrypt(text);
wprintf_s(L"%s\n", enctext);
wofstream output_stream;
output_stream.open(L"myfile.enc");
output_stream<< enctext ;
output_stream.close();
}
wstring encrypt(wstring decrypted) {
wstring encrypted;
for (unsigned int i=0; i<decrypted.length(); i++) {
encrypted += wchar_t(int(decrypted[i]) + 128);
}
return encrypted;
}
所以,與這片......代碼的問題是,雖然wprintf_s
函數輸出整個加密的文本,在書面文件中我只看到裏面的人物ASCII範圍(或至少是我看來)。加密的文本將被保存,直到找到未知字符(在控制檯中通過?顯示)。我想保存任何字符,並且我希望它們保存爲寬字符(每個字1個字)。我怎樣才能做到這一點?
您使用的是Windows嗎? –