In my program I need to convert a String to Int.
String str = new String(request.getData());
String [] setting = str.split(" ");
String bs = setting[1];
The value of bs is 1024, I use System.out.println
to test it, and it displays on the screen with "1024".
But when I use
int blockSize = Integer.parseInt(bs);
it will return an exception point to the line of Integer.parseInt
:
Exception in thread "main" java.lang.NumberFormatException: For input string: "1024"
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
at java.lang.Integer.parseInt(Integer.java:458)
at java.lang.Integer.valueOf(Integer.java:554)
Can someone help me to solve it? Thanks.
I suspect you have some hidden unicode character in the string bs
, you can remove the non-digits with:
bs = bs.replaceAll("\\D", "");
int blockSize = Integer.parseInt(bs);
The code above will also convert the string "1a2"
to 12
, but that doesn't seem your case.
try this code:
String bs = setting[1].trim().toString();
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With