Считывание перехода на новую строку в jTextPane - Java
Формулировка задачи:
Здравствуйте.
Проблема вкратце:
Считываю текст с jTextPane и шифрую его.
Пробелы, переход на новую строку и табуляция не шифруются, а просто добавляются в конечную строку текста.
Код в упрощенном виде (только то что нужно):
С пробелом и табуляцией срабатывает без проблем, а вот переход на новую строку выдает
Exception in thread "AWT-EventQueue-0" java.lang.StringIndexOutOfBoundsException: String index out of range: 67
В чем проблема и как ее решить?
while (i < Str.length()) { //Str- Строка, которая считывается с jTetPane
j = 0;
while (j <= alphabet.length()) { //alphabet- последовательность всех символов алфавита
if (Str.substring(i, (i + 1)).equals(alphabet.substring(j, (j + 1)))) { //Если текущий символ совпадает с символом из алфавита
/*Происходит шифрование*/
break;
}
else if (Str.substring(i, (i + 1)).equals(" ")) { //Если текущий символ- пробел
/*Добавляем его без шифрования*/
break;
}
else if (Str.substring(i, (i + 1)).equals("\n")) { //Если текущий символ- переход на новую строку
/*Добавляем его без шифрования*/
break;
}
else if (Str.substring(i, (i + 1)).equals("\t")) { //Если текущий символ- табуляция
/*Добавляем его без шифрования*/
break;
}
else {
/*Неизвестный символ/*
break;
}
j++;
}
i++;
}Решение задачи: «Считывание перехода на новую строку в jTextPane»
textual
Листинг программы
Str.substring(i, (i + 1))