Incapable de conserver les sauts de ligne lors de l'écriture de fichier texte comme blob

J'ai une zone de texte qui contient le texte que je veux à la sortie vers un fichier texte pour les utilisateurs à télécharger.

J'utilise cette fonction pour saisir lorsque les utilisateurs cliquent sur le bouton enregistrer

function saveTextAsFile()
{
    var textToWrite = document.getElementById("inputText").value;
    var textFileAsBlob = new Blob([textToWrite], {type:'text/plain'});
    alert(textFileAsBlob);
    var fileNameToSaveAs = document.getElementById("inputFileNameToSaveAs").value;

    var downloadLink = document.createElement("a");
    downloadLink.download = fileNameToSaveAs;
    downloadLink.innerHTML = "Download File";
    if (window.webkitURL != null)
    {
        //Chrome allows the link to be clicked
        //without actually adding it to the DOM.
        downloadLink.href = window.webkitURL.createObjectURL(textFileAsBlob);
    }
    else
    {
        //Firefox requires the link to be added to the DOM
        //before it can be clicked.
        downloadLink.href = window.URL.createObjectURL(textFileAsBlob);
        downloadLink.onclick = destroyClickedElement;
        downloadLink.style.display = "none";
        document.body.appendChild(downloadLink);
    }

    downloadLink.click();
}

Mais les sauts de ligne ne sont pas retenus. Ils existent dans le document.getElementById("inputText").valeur; mais pas dans le fichier texte créé à partir de la goutte.

Vous pouvez trouver la réponse à cette à partir de l'une des réponses au post suivant (cocher la réponse à propos de CODE 13): stackoverflow.com/questions/9980416/...

OriginalL'auteur Matt | 2013-10-04