Here you can find the source of split(final String value, final int maxLength)
public static List split(final String value, final int maxLength)
//package com.java2s; /*/*from ww w . j av a 2s.c o m*/ * Cacheonix Systems licenses this file to You under the LGPL 2.1 * (the "License"); you may not use this file except in compliance * with the License. You may obtain a copy of the License at * * http://www.cacheonix.org/products/cacheonix/license-lgpl-2.1.htm * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ import java.util.ArrayList; import java.util.List; public class Main { public static List split(final String value, final int maxLength) { final List parts = new ArrayList(23); final int originalLength = value.length(); if (originalLength > maxLength) { // split it if necessary final int splitCount = originalLength / maxLength; for (int splitIndex = 0; splitIndex < splitCount; splitIndex++) { parts.add(value.substring(splitIndex * maxLength, (splitIndex + 1) * maxLength)); } // process last piece if any final int leftOverLength = originalLength - splitCount * maxLength; if (leftOverLength > 0) { parts.add(value.substring(originalLength - leftOverLength, originalLength)); } } else { parts.add(value); } return parts; } }