Проблемы с разбором строк - PullRequest
0 голосов
/ 27 февраля 2020

Пожалуйста, помогите ... У меня есть файл со следующим форматом данных: b 100 42.47 MSFT

Я хочу взять '100' и преобразовать его в целое число. Я делаю:

num = Integer.parseInt(s.substring((s.indexOf(" ") + 1), (s.indexOf(" "))));

, который должен работать, но я получаю:

Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: -1

Есть идеи?

1 Ответ

0 голосов
/ 27 февраля 2020

Вы не говорите, какой язык используете, но в любом случае я не думаю, что ваши индексы - это то, что вы хотите. Если вы находитесь в C#, то конец того, что вы извлекаете, начнется с первого символа после первого пробела и продолжится для количества символов от начала строки до первого пробела. Если вы находитесь в Java, вы извлекаете из первого символа после первого пробела первый пробел, что, конечно, перед первым символом после. Это объясняет вашу ошибку индекса. Вы хотите, чтобы второй indexOf начинался с (или относительно) indexOf первого пробела, а не с начала строки.

...