2016-08-02 10 views
0

Das mag sinnlos erscheinen, aber wie würde ich in JavaScript mit dem Programmieren beginnen? Ich möchte ein Bild von meinem PC in meinen Browser hochladen und es dann wieder in meinem speichern PC an einem anderen Ort.Datei im Browser hochladen und erneut auf meiner Festplatte speichern

+0

Dies wird nicht aufgrund von Sicherheitseinschränkungen auf einer Webseite arbeiten. Sie können es in einigen Browsern oder Browser-Erweiterungen annähern, aber die Lösung ist nicht tragbar. Das Beste, was Sie tun können, ist, dass der Benutzer es erneut herunterladen kann und wählen Sie, wo es gespeichert werden soll. – Owen

+0

Sie "laden kein Bild von meinem PC in meinen Browser". Ihr Browser ist bereits auf Ihrem PC. Meinst du ein Bild von meinem PC auf einen Server über den Browser hochladen? In diesem Fall laden Sie es einfach hoch und laden es erneut herunter. Wenn Sie meinen, dass Ihr Browser Dateien direkt auf Ihrem PC lesen und schreiben soll, können Sie das nicht tun. –

+0

@torazaburo Technisch ist es möglich, Chrom, Chrom mit 'requestFileSystem'. siehe http://stackoverflow.com/questions/36098129/how-to-write-in-file-user-directory-using-javascript – guest271314

Antwort

2

Sie <input type="file"> Element verwenden können, change Ereignis, URL.createObjectURL(), <a> Element, download Attribut, .click()

<input type="file" /> 
 
<script> 
 
    document.querySelector("input[type=file]") 
 
    .addEventListener("change", function(e) { 
 
     var a = document.createElement("a"); 
 
     a.href = URL.createObjectURL(e.target.files[0]); 
 
     a.download = e.target.files[0].name; 
 
     document.body.appendChild(a); 
 
     a.click(); 
 
     document.body.removeChild(a); 
 
    }) 
 
</script>

+0

danke! Ist es möglich, festzulegen, wo die Datei gespeichert wird? – Josh

+0

@Josh _ "ist es möglich, festzulegen, wo die Datei gespeichert wird?" _ Nein. Nicht mit 'javascript'. Benutzeraktion sollte den Speicherort im Benutzerdateisystem auswählen, in dem die Datei gespeichert werden soll – guest271314

Verwandte Themen