私はこのログを私のログに残していますが、私の知る限りシナリオは不可能です。NumberFormatExceptionが有効な番号にある
java.lang.NumberFormatException: For input string: "1487832810"
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65) ~[na:1.7.0_80]
at java.lang.Long.parseLong(Long.java:430) ~[na:1.7.0_80]
at java.lang.Long.parseLong(Long.java:483) ~[na:1.7.0_80]
here is(と思う)(STに行番号が一致する)、関連するソースコード
424: char firstChar = s.charAt(0);
425: if (firstChar < '0') { // Possible leading "+" or "-"
426: if (firstChar == '-') {
427: negative = true;
428: limit = Long.MIN_VALUE;
429: } else if (firstChar != '+')
430: throw NumberFormatException.forInputString(s);
したがって、最初の文字(1
)が< '0'
であると考え?
私はそれが何らかの文字エンコーディングの問題か何かしか想定できません。
アイデア?
おそらく、 '1'の前に非印字文字がありますか? 'Long.parseLong'と呼ぶ番号の長さを記録できますか? –
メソッドの別の部分があるので、 "1 <'0'"ではありません。たぶん隠されたキャラクターです。 – Maroun
エラーを表示中に文字列の前後に引用符が来るのはなぜですか?文字列が "\" 1487832810 \ ""である可能性がありますか?ただ尋ねる。文字列の長さを表示し、私たちに知らせてください。 – gRaWEty