2

数値文字列を読み取ることができるスマート数値パーサーはどこで入手できますか...

  • 整数形式: -12345
  • 10 進形式: 123.45
  • 指数形式: 15e-24
  • 16 進数: #CAFEBABE
  • バイナリ: b01100101

...そして、適切な表現を取得してください(byte適合する場合から、適合GargantuanDoubleしない場合まで)?

私は今Java(Android)で考えているので、それがJavaならなおさらです。しかし、私は十分に小さいライブラリを別の言語から移植したいと思っています。

4

2 に答える 2

3

トークンを分離できると仮定すると、数値のデコードにInteger.decode()を使用できます。

(オプションの) 負符号および/または基数指定子 ("0x"、"0X"、"#"、または先頭のゼロ) に続く一連の文字は、示されている基数 (10、16 、または 8)。この一連の文字は正の値を表す必要があり、そうでない場合は NumberFormatException がスローされます。指定された文字列の最初の文字がマイナス記号の場合、結果は否定されます。文字列に空白文字は使用できません。

例えば。

Integer.decode("0xabcf123"); // hex
Integer.decode("07651");     // octal
Integer.decode("123459");    // decimal
于 2012-07-23T06:51:35.887 に答える
0

指数形式を除いて、各ケースを処理し、Integer.parseInt(String a、int radix);を使用できます。

于 2012-07-23T06:12:16.297 に答える