Duvida - XML JDOM

Estou fazendo um player em java, onde ele salva a playlist em xml
segue o codigo onde eu salvo a playlist.

o metodo salvarPlaylist recebe um arraylist com todas as musicas e um file do caminho onde sera salvo.


public boolean salvarPlaylist(ArrayList<Musica> musicas, File fl) {
        
        if (!fl.equals("")) {
            try {
                Element playlist = new Element("playlist");
                Element media;
                
                for (int i = 0; i < musicas.size(); i++) {
                    media = new Element("media");
                    media.setAttribute("src",musicas.get(i).getCaminho().toString());
                    playlist.addContent(media);
                    System.out.println("i " + i);
                }
     

                //Criando o documento XML (montado)
                Document doc = new Document();
                doc.setRootElement(playlist);
                String teste = "";

                FileOutputStream saida;
                PrintStream fileSaida = null;

                XMLOutputter xout = new XMLOutputter();
                teste = xout.outputString(doc);


                try {

                    saida = new FileOutputStream(fl+".xml");
                    fileSaida = new PrintStream(saida);
                    fileSaida.print(teste);
                    return true;

                } catch (Exception e) {
                    System.err.println(e);
                    return false;
                }


            } catch (Exception ex) {
                ex.printStackTrace();
                return false;
            }
        }else{
            return false;
        }
    }

Está salvando normamente, so que o problema é que eu preciso que ele salve o xml assim:


<playlist>
<media src="musica1.mp3"/>
<media src="musica2.mp3"/>
<media src="musica3.mp3"/>
<media src="musica4.mp3"/>
<media src="musica5.mp3"/>
</playlist>

mas ele salva assim:


<playlist><media src="musica1.mp3"/><media src="musica2.mp3"/><media src="musica3.mp3"/><media src="musica4.mp3"/><media src="musica5.mp3"/></playlist>

ele salva tudo em uma linha so, quando sao poucas musicas ocorre tudo certo, mas quando eu vou salvar uma playlist com 500, 600 , 1000 musicas da erro pelo tamanho.

com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException: Invalid byte 2 of 3-byte UTF-8 sequence.

resumindo, preciso que ele salve pulando linha.

me ajudem

Isso é formatação do XML veja a classe Format há tres tipos CompactFormat , RawFormat e PrettyFormat

Um pequeno exemplo:

   XMLOutputter xout = new XMLOutputter();       
   org.jdom.output.Format formatXML = org.jdom.output.Format.getPrettyFormat();
    xout.setFormat(formatXML);      

Maiores detalhes nas documentação : http://www.jdom.org/docs/apidocs/org/jdom/output/Format.html