Quebra de linha num documento Office 2003

1 resposta
samirrolemberg

Estou desenvolvendo uma aplicação que trabalha com um template .doc.

no caso, eu terei uma lista de um List que será tranformado em um obj.toString()
mais a frente que será concatenado.

E para cada indice desse list eu terei uma quebra (um \n ou \r\n).

então montei o seguinte:

public String _gerarLista(List<Object> lista){
		String concat = new String();
		for (Object object : lista) {
			concat+=object.toString()+_inserirQuebraLinha();
		}
		return concat;
	}

	public String _inserirQuebraLinha(){
		return "\n";
	}

eu já havia montado um outro programa que trabalha da mesma maneira.

uma string que é “modulada” apatir dos meus métodos e as quebras de linhas são feitas puramente com \n.

mas eu já faço isso dentro do java.

nesse caso eu tenho que ler o template (o arquivo .doc) e inserir a informação na string (com a quebra)
e preencher o .doc novamente com a informação.

mas, em todos os casos eu não consegui colocar a quebra.

tentei o: \n, \n\r, \r\n, System.getProperty(“path.separator”);

mas sem resultados. em todos os casos o texto (já no Word 2010 - mas o modelo é .doc mesmo)
apenas deu um espaçamento.

alguém tem alguma outra idéia?

1 Resposta

samirrolemberg

Consegui:

public String _inserirQuebraLinha(){ return "\u000b"; }

no office (word) a quebra de linha dentro de uma tabela é feita pelo shift+enter.

então pra saber o codigo, recorri a um visualizador de arquivos em hexadecimal, e vasculhei o .doc atras da ocorrencia. e encontrei o “0b” e passei pro \u000b.

então ao final da string eu (por segurança) coloco um espaço em brando + o metodo de quebra de linha.

mas agora o problema é outro ^^ (vai pra outro topico)

Criado 2 de setembro de 2011
Ultima resposta 6 de set. de 2011
Respostas 1
Participantes 1