Rechercher et remplacer toutes les Saut de ligne ou ligne de séparation des caractères avec les \n dans la Chaîne indépendante de la Plateforme

Je suis à la recherche d'un bon et solide moyen de rechercher et de remplacer toutes les newline ou breakline caractères à partir d'un String indépendant de toute plate-forme OS avec \n.

C'est ce que j'ai essayé, mais n'a pas vraiment bien.

public static String replaceNewLineChar(String str) {
    try {
        if (!str.isEmpty()) {
            return str.replaceAll("\n\r", "\\n")
                    .replaceAll("\n", "\\n")
                    .replaceAll(System.lineSeparator(), "\\n");
        }
        return str;
    } catch (Exception e) {
        //Log this exception
        return str;
    }
}

Exemple:

Chaîne D'Entrée:

This is a String
and all newline chars 
should be replaced in this example.

Devrait Chaîne De Sortie:

This is a String\nand all newline chars\nshould be replaced in this example.

Cependant, il a renvoyé l'entrée même de la Chaîne de retour. Comme elle l'a placé \n et en l'interprétant comme une nouvelle ligne de nouveau.
Veuillez noter que, si vous vous demandez pourquoi quelqu'un voudrait-il \n là, c'est une exigence particulière par l'utilisateur de placer la Chaîne XML postfaces.

Pourquoi n'a t il pas bien fonctionner? Vous avez écrit prévu en sortie de chaîne, pourquoi ne pas mettre le résultat réel?
Trouvé mon erreur, il devrait ne \\\\n, bizarre

OriginalL'auteur Indigo | 2013-11-11