Не думаю, что есть готовое решение, но я бы сделал что-то вроде этого:
private String[] splitByNumber(String s, int chunkSize){
int chunkCount = (s.length() / chunkSize) + (s.length() % chunkSize == 0 ? 0 : 1);
String[] returnVal = new String[chunkCount];
for(int i=0;i<chunkCount;i++){
returnVal[i] = s.substring(i*chunkSize, Math.min((i+1)*chunkSize-1, s.length());
}
return returnVal;
}
Использование будет:
String[] textArray = splitByNumber(text, 4);
РЕДАКТИРОВАТЬ: подстрока на самом деле не должна превышать длину строки.