Как я могу заставить мои файлы шифрования / дешифрования читать друг друга? - PullRequest
0 голосов
/ 22 октября 2018

Я постараюсь произнести это без какой-либо путаницы, но я запутался, так что это будет сложно.

Я создал программу шифрования «один раз» (увеличивать или уменьшать символы). Прямо сейчас, когда я вхожу случайный файл из той же папки, что и моя программа, для шифрования или дешифрования, программа делает этои вновь зашифрованный / расшифрованный файл отправляется в файл «Зашифрованный» или «Дешифрованный» без проблем.

Моя проблема заключается в том, что когда я пытаюсь извлечь из недавно зашифрованного файла и зашифровать егочтобы вернуть его в нормальное состояние (или наоборот), я ничего не получаю.Данные, которые я отправил в одну из этих папок, исчезли, и я не знаю, почему.Извините, если это не имеет никакого смысла.

Код:

import java.util.Scanner;
import java.io.*;

public class Encryptor
{
public static void main (String[] args)
{
  Scanner in = new Scanner(System.in);
  PrintWriter fileOutE;//Content going to "Encrypted" file
  PrintWriter fileOutD;//Content goint to "Decrypted" file

  String fileName = "";//Name of file user wants to encrypt/decrypt
  String encryptOrDecrypt = "";//eOrc stands for "Encrypt or Decrypt"
  String line = "";
  char ch = ' ';

  try
  {
     //Ask user for file to be encrypted or decrypted
     System.out.println("Please enter the name of the file: ");
     fileName = in.nextLine();

     //Ask user if they want to encrypt or decrypt file
     System.out.println("Would you like to encrypt or decrypt?: ");
     encryptOrDecrypt = in.nextLine();

     File f = new File (fileName);
     Scanner fileIn = new Scanner (f);
     fileOutE = new PrintWriter ("Encrypted.txt");//File for encrypted text
     fileOutD = new PrintWriter ("Decrypted.txt");//File for decrypted text

     if(encryptOrDecrypt.equalsIgnoreCase("encrypt"))
     {
        while(fileIn.hasNextLine())
        {
           line = fileIn.nextLine();

           for(int i = 0; i < line.length(); i++)
           {
              ch = line.charAt(i);

              if(Character.isLetter(ch))
              {
                 ch++;
              }

              fileOutE.print(ch);
           }

        }

           fileOutE.close();
           System.out.println("File has been sent to Encrypted.txt");
     }
     if(encryptOrDecrypt.equalsIgnoreCase("decrypt"))
     {
        while(fileIn.hasNextLine())
        {
           line = fileIn.nextLine();

           for(int i = 0; i < line.length(); i++)
           {
              ch = line.charAt(i);

              if(Character.isLetter(ch))
              {
                 ch--;
              }

              fileOutD.print(ch);
           }
        }

           fileOutD.close();
           System.out.println("File has been sent to Decrypted.txt");
     }  
   }//end try
   catch(Exception e)
   {
     System.out.println("Got an error");
   }//end catch

}//end main


}//end class
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...