Witam. Zmagam się z pewnym zagadnieniem. Mianowicie muszę odczytać z pliku tekstowego wyrazy po czym zamienić co drugi znak na następny w kodzie ASCII.
Algorytm szyfrowania działa tak jak trzeba, Plik też wczytuje. Natomiast kod nie szyfruje wyrazów odczytanych z pliku i nie zapisuje do pliku. Domyślam się, coś jest nie tak z przeładowaną metodą szyfr. Tylko nie mam pojęcia jak to naprawić. Dziękuje za jakiekolwiek podpowiedzi. Pozdr.

public class Konwersja {

    private static final String FILE_NAME = "C://mac//Korepetycje//src//tj.txt";

    public static String Szyfr(String plainText) {
       String ALPHABET = "abcdefghijklmnopqrstuvwxyz";

        int shiftKey = 1;
        plainText = plainText.toLowerCase();
        String cipherText = "";
        for (int i = 0; i < plainText.length(); i ++) {

            if (i%2!=0){
                int charPosition = ALPHABET.indexOf(plainText.charAt(i));
                int keyVal = (shiftKey + charPosition) % 26;
                char replaceVal = ALPHABET.charAt(keyVal);
                cipherText = cipherText + new String(new char[]{replaceVal});
            }
            else{
                cipherText = cipherText + plainText.charAt(i);}
        }
        return cipherText;
    }


    private static String Odwrocenie(String slowo) {
        if (slowo == null || slowo.isEmpty()) {
            return slowo;
        }
        String odwrocone = "";
        for (int i = slowo.length() - 1; i >= 0; i--) {
            odwrocone = new String(odwrocone + slowo.charAt(i));
        }
        return odwrocone;
    }

    public static void Szyfr(List<String> slowa) {
        slowa = new ArrayList<>();
        for (String slowo : slowa) {
            slowa.add(Szyfr(slowo));
        }
        zapis("szyfry.txt",slowa);
    }

    private static void Odwrocenie(List<String> list) {
        list = new ArrayList<>();
        for (String slowo : list) {
            Odwrocenie(slowo);
        }
        zapis("szyfry.txt",list);
    }


    public static void Konwersja(String fileName) {
        List<String> lista = null;
        try (FileReader fr = new FileReader(FILE_NAME); Scanner sc = new Scanner(fr)


        ) {
            String line;
            int linie = 0;
            lista = new ArrayList<>();
            while (sc.hasNextLine()) {
                line = sc.nextLine();
                lista.add(line);
            Szyfr(lista);
            linie ++;
            }
            System.out.println(lista.toString() + "\n");
        } catch (IOException e) {
            e.printStackTrace();
        }

    }
    public static void zapis(String fileName, List<String>lista) {
        try (FileWriter fw = new FileWriter(fileName, true);
             PrintWriter pw = new PrintWriter(fw);) {
            for (String s : lista) {
                pw.println(s);

            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

    public static void main(String[] args) {
       Konwersja("tj.txt");
    }
}