Эквивалент C# кода для кодирования в java - PullRequest
0 голосов
/ 15 апреля 2020

Мне нужно знать, что эквивалентно Java для следующего кода. Мне нужно передать функциональные клавиши в виде строки в Java. Следующий код в C# работает. Мне нужно знать, как это сделать в Java.

String escKey = System.Text.Encoding.ASCII.GetString(new byte[] {27});

String f1Key = escKey+ "[11~";

Ответы [ 2 ]

0 голосов
/ 15 апреля 2020

Нет необходимости ни в Java, ни в C# использовать такой сложный код. На обоих языках вы можете представить escape-символ с помощью escape-кода Unicode \u001B, а в Java вы также можете использовать восьмеричный escape \033.

Так что и в C#, и в Java вы можно использовать:

String f1Key = "\u001B[11~"

И в качестве альтернативы в Java вы можете сделать:

String f1Key = "\033[11~"

Но если вы хотите получить прямой эквивалент вашего C# кода в Java, это будет:

String escKey = new String(new byte[] { 27 }, StandardCharsets.US_ASCII);
String f1Key = escKey + "[11~";
0 голосов
/ 15 апреля 2020

Вы можете использовать следующий метод:

Character.toString((char)27);
...