Wie kann ich eine Datei generieren und bieten es zum download in plain javascript?
Ich würde gerne eine text-Datei erstellt in der javascript-dynamicly, dann bieten Sie diese zum download. Derzeit bekomme ich diese zu arbeiten, um einen Abschluss mit einer der folgenden Lösungen:
content = "abc123";
document.location = "data:text/octet-stream," + encodeURIComponent(content);
ODER
content = "abc123";
var bb = new BlobBuilder();
bb.append(content);
var blob = bb.getBlob();
blob = blob.slice(0, blob.size, 'text/octet-stream');
var fr = new FileReader();
fr.onload = function() {document.location = this.result;}
fr.readAsDataURL(blob);
Allerdings haben diese Beiden Lösungen, wenn der download-box erscheint, wird nur eine Standard-Dateinamen von "download" in den speichern unter-Dialog.
Meine Frage ist im Grunde, wie kann ich dies ändern, um einen spezifischen Dateinamen, z.B. 'readme.txt' oder ' - Szene.obj'
Beachten, dass der Datentyp wurde zuvor 'text/plain' allerdings wenn dieser verwendet wird, das Dokument wechselt auf die neue text-Dokument statt und bietet es zum download (als text/octet-stream scheint zu tun).
Ich will keine flash-Lösung, javascript/html5 nur Vorschläge bitte.
Cheers, Josh
- möglich, Duplikat der gibt es eine Möglichkeit zum festlegen eines vorgeschlagenen Dateinamen bei Verwendung von data: - URI?
- Dies scheint ein Duplikat zu sein für die vorgeschlagenen link, nicht sicher, warum ich es nicht finden, wenn ich suchte. Die Menschen wollen eine Antwort auf diese Frage sollte dem link Folgen.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Für die, die Sie haben zu verwenden FileSaver von FileAPI: Schriftsteller-Spezifikation.
Für jetzt, es ist nur ein Entwurf, und nach mailing-Liste beantworten es ist noch nicht implementiert im Browser.
Können Sie die Uhr beispielsweise auf eine Chrom Ausgabe um up-to-date Informationen über den Fortschritt in der Umsetzung
UPD 02.08.2013: ich habe seitdem festgestellt, dass ein Projekt bietet FileSaver-Schnittstelle mit ordentlich tricks
Ich denke, Sie sollten check: jQuery Tabelle in CSV exportieren