Salve galera…
Seguinte, eu tenho um ArrayList que guarda uma String de 100 posicoes…Eu quero quebrar essa String e ir imprimindo conforme quantas posicoes eu quiser com quebra de linha …vejam.
ArrayList lista = new ArrayList();
lista.add("Aqui vai um texto de 100posicoes");
//aqui quero imprimir as 100 posicoes, porem quebrando linha para dividi-la e caber onde preciso
System.out.printf("%50s\n", lista.get(0).toString());
//resultado final seria para posicoes
primeira linha da minha mensagem esta correta //50 linhas
aqui comeca a segunda linha da minha mensagem // +50 linhas
//total de 100 linhas
Espero que tenham entendido o que preciso…Como fazer isso ???
obrigado.
Olá amigo não sei quais são suas restrições porém daria para fazer assim:
String s = "texto com quantas posições quiser";
for(int i=50;i<100;i+50;){
System.out.println(s.substring(i-50,i));
}
Usa assim usa o o metodo da length(), guarda o retorno em em um atributo int, ae joga nuam confocional if e exibe as substrings!
Veja se te ajuda
public static final String NOVA_LINHA = "\r\n";
/**
* Retorna true se o texto for diferente de nulo e tenha tamanho maior que zero
*/
public static boolean isValidText(String text) {
return ( ( text != null ) && ( text.trim().length() > 0 ) );
}
/***
* @author Avsouza
* retorna uma string com quebras de linha ate a posicao <b>"quebra"</b>
* @param string
* @param quebra
* @return
*/
public static String getStringQuebradaEmLinhas(String string, int quebra){
StringBuilder stringBuilder = new StringBuilder();
if(isValidText(string)){
int count = 0;
for (int i = 0; i < string.length(); i++) {
if (count < quebra){
count ++;
stringBuilder.append(string.charAt(i));
} else {
stringBuilder.append(string.charAt(i));
stringBuilder.append(NOVA_LINHA);
count = 0;
}
}
} else {
return "";
}
return stringBuilder.toString();
}
/***
* @author Avsouza
* retorna um array de strings com cada string quebrada ate a posicao <b>"quebra"</b> em uma posicao do array
* @param string
* @param quebra
* @return
*/
public static String [] getArrayStringQuebradaEmLinhas(String string, int quebra){
return getStringQuebradaEmLinhas(string, quebra).split(NOVA_LINHA);
}
opa galera, fiz o esquema…
vlw ae. obrigado.