Конвертировать символ в строку - PullRequest
1 голос
/ 28 сентября 2011

Я хочу преобразовать символ в строку следующим образом:

char aaa = '\uE001';

Я хочу получить строку со значением "\uE001", чтобы я мог использовать substring(2) для получения только "E001". Это возможно? Пожалуйста, помогите

Ответы [ 4 ]

7 голосов
/ 28 сентября 2011

Ну, сам символ представляет собой одиночный символ , U + E001.Он имеет шестнадцатеричное значение 0xE001.Если вы хотите, чтобы это значение было целым числом, просто используйте:

int unicodeValue = aaa;

Затем вы можете преобразовать это целое значение в шестнадцатеричное значение различными способами, если вам действительно нужно, например:

String hex = Integer.toString(unicodeValue, 16);

(Предполагается, что перегрузка доступна на java-me.)

... или Integer.toHexString, если она доступна, но Integer.toString(int, int) нет.

Зачем вам этоценность хоть?Если бы вы могли уточнить это, мы могли бы дать вам более полезный совет.

1 голос
/ 29 сентября 2011

Это просто так

char aaa = '\ uE001';

String s = String.valueOf (aaa);

1 голос
/ 28 сентября 2011
Integer.toHexString((int)aaa) ;

.. и подстрока () не требуется.

0 голосов
/ 28 сентября 2011

Вы можете взять любое целочисленное значение и создать из него шестнадцатеричную строку, например:

  String s = Integer.toHexString(num);

, поэтому Джон Скит находится на правильном пути.Вы можете:

  char aaa = '\uE001';
  int num = aaa;
  String hex = Integer.toHexString(num); //now contains "e001"
...