Alinhar uma String no centro [Resolvido]

Bom,
eu tenho esse código:

[code]
String
a = " lina@ferreira";

a = a.replace(’@’,’\n’);

System.out.println(Stood.StringAlign(a,38,Stood.ALIGN_CENTER));[/code]

Bom o resultado disso vai ser:

lina ferreira

Notem que a palavra ferreira esta em baxu,
pois eu quebrei aonde encontrei a quebra de linha.

Porem eu estava querendo alinhar a palavra ferreira embaxu da lina
no centro…
e não sei como fazer isso…

O lance é assim: Tenho qualquer String, e identifico onde está o caracter
de quebra de linha (@), e quebro a linha nele… e preciso centralizar as 2 linhas no meiu.

Alguem tem uma ideia?

Tchauzin!

Não tem como você fazer um split e depois dois println?

String a = "lina@ferreira"; String b[] = a.split("@"); for (String s : b) System.out.println(Stood.StringAlign(s,38,Stood.ALIGN_CENTER));

Você está exibindo a palavra no console mesmo, ou a versão oficial é um JLabel?

Se for num JLabel, acho que dá também pra fazer com HTML:

String a = "lina@ferreira"; String labelText = a.replaceAll("@", "<br>"); lblText.setText("<html><body><center>" + labelText + "</center></body></html>");

Funcionou ViniGodoy …

Muito obrigada! =D

Eu fiz uma gambiarra aqui, mas que talvez lhe abra a mente pra futuras outras gambiarras.
Estou meio sem tempo, pode ser que nem seja o que você quer…
mas funciona…

[code]public class lina {

/** Creates a new instance of lina */
public lina() {
}

//texto, simbolo, partida (1 inicio, -1 do fim)
public String getTok(String texto, char simbolo, int partida) {
  boolean chegou = false;
  String aux = "";
  if (partida == 1) {
    int i = 0;
    while (!chegou && i <= texto.length()-1) {
      if (texto.charAt(i) != simbolo) 
        aux+=texto.charAt(i);  
      else
        chegou = true;
      i++;
    }
  }
  else if (partida == -1) {
    int i = texto.indexOf(simbolo+"")+1;
     while (!chegou && i <= texto.length()-1) {
      if (texto.charAt(i) != simbolo) 
        aux+=texto.charAt(i);  
      else
        chegou = true;
      i++;
    }
    
  }
  else return "Erro.";
  return aux;
}
public static void main(String lina[]) {
  lina l = new lina();
  String a = "lina@ferreira";
  String space = "            ";
  System.out.println(space+l.getTok(a,'@',1));
  System.out.println(space+l.getTok(a,'@',-1));

	
} 

}[/code]

Passei a resposta pro java 4…
quem quiser:

[code]
//
// Declara a variavel.
//
String
a = " Lina uhull uhull@legal@bem mais legal@claro!@é nova...@quebreiTudo.com@desossei.gov";

String
b[] = a.split("@");

for (
int
ln = 0
;
ln < b.length
;
ln++
)
{
System.out.println(VeSUtil.StringAlign(b[ln],38,Stood.ALIGN_CENTER));
}[/code]

Valeu a todos!!! agora que mais um ajudou!!

Tchauzin!

Ao invés dos espaços utiliza o \t que corresponde à tabulação… tanto antes do “lina” como após o \n lá no seu replace…