Доступ к строковой переменной, созданной внутри цикла for - PullRequest
0 голосов
/ 18 ноября 2018

Я создаю приложение для Android, которое конвертирует ascii в бинарный файл. Но я не могу понять, как получить доступ к строке, которую я создал вне цикла for. если я наберу в двоичном (var name) Android Studio выдает мне ошибку. Вот мой код (он только в прослушивателе по нажатию)

String output = "";
String input = textEditText.getText().toString();
int length = input.length();

for (int i = 0;i < length;i++) {
    char c = input.charAt(i);
    int value = Integer.valueOf(c);
    String binaryOutpt2 = Integer.toBinaryString(value);
    String binary = output + binaryOutpt2;
}

1 Ответ

0 голосов
/ 18 ноября 2018

Используйте StringBuilder вместо String для переменной output, например:

String input = textEditText.getText().toString();        
StringBuilder output = new StringBuilder();
int length = input.length();
for (int i = 0; i < length; i++) {
    char c = input.charAt(i);
    int value = (int) c;
    String s = Integer.toBinaryString(value);
    for (int j = 0; j < 8 - s.length(); j++) {
        output.append("0");
    }
    output.append(s);
}
String out = output.toString();

, таким образом вы добавляете каждое двоичное значение каждого символа на начальном выходе и, наконец, получаетевсе двоичное представление текста.Также добавляйте нули в начале каждого двоичного значения, пока не получите 8 двоичных цифр для каждого символа.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...