Escape Unicode в событии Android OnTextChanged: от "цена:10rs" до "u0070", "u0063", "u003A", "u0031", "

Как я могу избежать любого Unicode в событии Android OnTextChanged?? Как "цена", чтобы "\u0070\u0072\u0069\u0063\u0065Я пытался, но не могу найти решение. Это мой текстовый наблюдатель

  price.addTextChangedListener(new TextWatcher() {

           public void afterTextChanged(Editable s) {
           }

           public void beforeTextChanged(CharSequence s, int start, 
             int count, int after) {
           }

           @SuppressLint("NewApi")
        public void onTextChanged(CharSequence s, int start, 
             int before, int count) {

          MainActivity.this.priceshow(s);

           }
          });

и это моя CharSequence

 private String priceshow (CharSequence s) {
            String priceshowstring= "";
            priceshowstring = s.toString().replace("","");
            System.out.println(priceshowstring);
            return priceshowstring;
            }

1 ответ

Решение

Чтобы преобразовать символ в его представление Unicode, вы можете использовать

String.format("\\u%04x", (int) character);

Используйте StringBuilder для конвертации всей CharSequence

StringBuilder builder = new StringBuilder();
for (int i = 0, length = charSequence.length(); i < length; i++) {
    builder.append(String.format("\\u%04x", (int) charSequence.charAt(i)));
}
String result = builder.toString();
Другие вопросы по тегам