2015-05-28 2 views
-5

В моем приложении я передаю определенное значение (в данном случае «p500108270») с намерением сделать другое действие.NumberFormatException, Недопустимый длинный

Второе действие делает его длинным с Long.parseLong (string).

Когда я компилирую сейчас, я получаю NumberFormatException, говорящий, что Long недействителен.

Что я могу сделать против этого? Мне нужно иметь это первое письмо, и мне нужно использовать его долго.

Благодаря

+3

Как вам нужно долго, если у вас есть персонаж? Возьмите его перед разбором и добавьте его обратно в то, что потом – codeMagic

+0

Я работаю с API Jamendo с помощью дооснащения, а в качестве идентификатора он не принимает строки, почему .. Как я могу добавить его после разбора? –

+0

Никогда не использовал этот api, но я думаю, вы не можете добавить его, если он позволяет только долго. Я не знал, что вы пытаетесь сделать. Все еще не уверены, но я думаю, вам нужно будет хранить p как строку где-то не в id – codeMagic

ответ

0

Решение было добавить ар в URL в Retrofit ответ раньше (идентификатор) (что они называют манипуляции URL, проверить сайт Дооснащаемый, чтобы узнать больше о том), где долго ид был дан.

Благодарим за помощь!

0

стараются избавиться от характера только для этой части Long.parseLong (String.substring (1));

0

Вы можете передать String между действиями (p500108270), а затем, где вам нужно, проанализировать только числовую часть строки до long. Например:

long num = Long.parseLong(passedString.substring(1));