Как преобразовать текстовую String в Int

122
20 сентября 2019, 03:20

Как преобразовать текстовую String, с фиксированной длиной (16 символов) в Int и обратно?

Мне не нужно простое преобразование типов переменных, мне нужно преобразование строки в кодировке ASCII в цифровое представление этой строки.

Например строка "AsDfGhJkLoIpUyTr" будет конвертирована в "065115068102071104074107 076111073112085121084114"

Answer 1

Преобразовать такое число в int не получится, так как int имеет размер 32 бита и может иметь максимальное значение 2147483647. Можете преобразовать в строку с байтами, или в массив интов, в зависимости от того, для чего вам это нужно:

    String s = "AsDfGhJkLoIpUyTr";
    StringBuilder sb = new StringBuilder();
    s.chars().forEach(sb::append);  // Получите строку 
    System.out.println(sb.toString());
    sb.setLength(0);
    s.chars().forEach(i -> { // Получите строку с ведущими нулями
        if (i < 10) {
            sb.append("00");
        }
        if (i < 100) {
            sb.append("0");
        }
        sb.append(i);
    });  
    System.out.println(sb.toString());
    List<Integer> ints = new ArrayList<>();
    s.chars().forEach(ints::add); // Получите массив байт в виде int'ов
    ints.stream().forEach(System.out::print); 
    // Получить массив байт и воссоздать из него строку
    byte[] byteArr = new byte[ints.size()]; 
    for (int i = 0; i < byteArr.length; i++) {
        byteArr[i] = (byte)((int) ints.get(i));
    }
    String out = new String(byteArr);
    System.out.println(out);
READ ALSO
Произвести операцию по закрытию JFrame

Произвести операцию по закрытию JFrame

Могу ли я как-то изменить значение, скажем, логической переменной в момент закрытия окошка JFrame?

131
Выравнивание формы

Выравнивание формы

Нужно создать форму регистрации, чисто визуально, и я не знаю как выровнять ее элементыРасполагаться они должны так: название поля - рядом...

129
Нажатие кнопки в окне приложения

Нажатие кнопки в окне приложения

Подскажите библиотеку на Jave для нажатия кнопки или клик в окнеНапример имеется калькулятор,и необходимо нажать кнопку 1 и кликнуть на плюс

129
Безопасно ли приведение типа Set к List? [закрыт]

Безопасно ли приведение типа Set к List? [закрыт]

Компилятор не жалуется абсолютно, но все же интересно

109