Как исправить возвраты, отправленные через Telnet в Inputstream в Java? - PullRequest
0 голосов
/ 09 апреля 2019

На моем Java-сервере чата пользователи могут изменить свое имя пользователя, используя символы возврата напротив своего сообщения.

В настоящее время я пишу чат-сервер и клиент на Java. Это работает очень хорошо, но у меня есть досадная «ошибка», что пользователи могут отправлять сообщения без имени пользователя, используя обратные пробелы перед своими сообщениями, потому что telnet или используемый BufferedReader-InputStream сохраняет обратные пробелы в строке сообщения.

Я пытался заменить пробелы, что делало невозможным изменение орфографических ошибок.

Я не знаю, что мне делать дальше.

Пример: Test>[10 backspaces]This is a test. Другие получают сообщение This is a test., но фактическое сообщение должно быть Test:This is a test.

1 Ответ

1 голос
/ 22 мая 2019

Эта строка кода частично исправила мою проблему:

while (input.contains("\b")) input = input.replaceAll("^\b+|[^\b]\b", "");
...