2012-04-03 6 views
2

Ist es in JavaScript möglich, eine HTML-Datei im gleichen Verzeichnis zu erstellen? Nach einigem Suchen auf Google landete ich bei der Verwendung ActiveXObject wie folgt aus: -Dateihandling in JavaScript

var fso = new ActiveXObject("Scripting.FileSystemObject"); 
     varFileObject = fso.OpenTextFile("C:\apache-tomcat-7.0.23\webapps\proof\web.html", 2, true,0); 
     varFileObject.write(data); 
     varFileObject.close(); 

Aber es einen Fehler zeigt, die ActiveXObject ist, existiert nicht definiert oder nicht. Ich bin nicht sicher, warum dieser Fehler kommt. Ist dieser Code Browser spezifisch? Ich benutze Chrom und ich muss HTML-Datei mit Javascript schreiben. Bitte helfen Sie mir, was ich im obigen Code ändern kann, damit es ausgeführt werden kann. Oder hilf mir mit einer anderen Alternative.

+1

TiddlyWiki macht lokale Datei-I/O auf diese Weise - http://oldwiki.tiddlywiki.org/wiki/How_To/Configure_your_browser_to_allow_saves_to_disk –

+0

ActiveXObject ist IE specific. – Pranav

+1

könnte dies helfen könnte: - http://StackOverflow.com/Questions/292566/Browser-Application-Local-File-System-Access – Pranav

Antwort

3

ActiveX-Objekt funktioniert nur in Internet Explorer. Und der Browser darf keine Änderungen an Ihrem Dateisystem vornehmen. Allerdings, wenn Sie HTML-Seite speichern müssen, dann müssen Sie einige zusätzliche Dinge tun, wie die URL der HTML-Seite oder die ganze Seite als Zeichenfolge an einen Server senden, hosten Sie den Server auf localhost mit Tomcat und Sie können Java-Code zum Speichern der abgerufenen verwenden URL oder Zeichenfolge, die Sie auf Ihrem Computer gesendet haben. Ich habe das Gleiche getan. Wenn Sie brauchen, kann ich Ihnen den Code auch zur Verfügung stellen. (BTW-Code ist ziemlich einfach). Um die Seite mit URL zu holen, können Sie die Jsoup-Bibliothek verwenden, die ein sehr guter HTML-Parser ist. Hoffe, das hilft!

+0

Danke blunderboy !! Verstanden ... Ich denke, das wird funktionieren, danke nochmal :) –

3

ActiveXObject ist eine IE-Sache, und selbst dann wird der Benutzer gefragt, ob er ihn benutzen will oder nicht, und er wird regelmäßig vor den Gefahren gewarnt.

Der Browser hat aus gutem Grund keinen Zugriff auf das Dateisystem. Stellen Sie sich vor, eine alte Website könnte Dateien auf Ihre Festplatte schreiben!

+0

yeah..danke evan dafür, mir zu helfen und meine Gedanken zu klären. –