Не удается расшифровать текстовый файл через RNCryptor
Я успешно зашифровал текстовый файл через RNcryptor с этим кодом
NSFileManager *filemgr;
NSData *databuffer;
filemgr = [NSFileManager defaultManager];
NSString *destPath = @"Users/DivyaDinesh/Downloads/abcde";
databuffer = [filemgr contentsAtPath: @"Users/DivyaDinesh/Downloads/abcd" ];
NSError *error;
NSData *encryptedData = [RNEncryptor encryptData:databuffer
withSettings:kRNCryptorAES256Settings
password:@"ABC123"
error:&error];
[encryptedData writeToFile:destPath atomically:YES];
Затем я попытался расшифровать то же самое с помощью этого кода
NSString *destPath1 = @"Users/DivyaDinesh/Downloads/abcdg";
NSData *encryptedData = [NSData dataWithContentsOfFile:@"Users/DivyaDinesh/Downloads/abcde"];
NSError *error;
NSData *decryptedData = [RNDecryptor decryptData:encryptedData withPassword:@"ABC123" error:&error];
[decryptedData writeToFile:destPath1 atomically:YES];
я получаю пустой текстовый файл в качестве вывода, что я здесь делаю не так? пожалуйста помоги
Зачем? как это исправить может кто-нибудь дать решение
1 ответ
Хорошо, если это так, то я думаю, что ваш файл поврежден или система не получает его. сделайте одно, попробуйте зашифровать и расшифровать другой файл, попробуйте, работает ли он или нет.
это иногда случается в Mac, когда вы пытаетесь создать текстовый файл в Mac в Textedit и когда вы сохраняете его, как говорят somefile.txt, появляется предупреждение и говорит "cannot save this document with extension txt to the end of the name"
вот так, обратите внимание, что это происходит, когда вы пытаетесь сохранить его с расширением ".txt" до конца его имени.
я создал файл в textedit, и когда я зашифровал, как вы сказали в вопросе, я получил его размер 82 байта, то я создал еще 2 файла в текстовом редакторе и зашифровал их, они также содержат тот же размер 82. И я не смог расшифровывать те же файлы, расшифрованный размер файла отображается как 0 байтов, без содержимого вообще. Я не знаю, получаешь ли ты расшифрованный файл как 0 байтов.
Затем я дал файл, который не существует в моей книге Mac в качестве исходного файла для шифрования. к моему удивлению, я получил зашифрованный файл с именем, которое я указал, и это тоже с тем же размером 82 байта!
Затем для решения создайте текстовый файл в textedit и сохраните как rtf, затем перейдите в место, где вы сохранили его в вашей системе, и переименуйте файл следующим образом.
если имя вашего файла - somefile, переименуйте его в somefile.txt.
Теперь попробуйте снова выполнить шифрование и дешифрование, оно будет работать:-)