2017-02-01 3 views
0

У меня есть эта огромная строкаСоздать массив из огромной строки по частям

String vStr = "('1','uno'),('2','dos'),('3','tres'),('4','cuatro')...('1000000','one millon')" 

, когда я использую

vStr.split('),(') 

У меня есть ошибка OutOfMemory исключение в String.Split

Как я могу сделать раскол? но до 500 частей в то время?

+1

Скорее всего, существует лучшее общее решение для всего, что вы пытаетесь выполнить здесь. Что именно вы планируете делать с частями этой строки (независимо от того, все ли они одновременно или 500 за раз)? – CommonsWare

ответ

1

Если вы хотите ограничить количество результирующих частей, просто добавьте нужные части в качестве второго аргумента метода split().

vStr.split('),(', 500) 

И, возможно, сделать это, сколько раз вам нужно в петле или что-то в этом роде.

+0

Спасибо, отличный ответ, кстати, я закончил использовать StringUtils из apache commons-lang3, метод StringUtils.splitByWholeSeparator, этот метод работает быстро и не выбрасывает outofmemoryexception – seba123neo

Смежные вопросы