我有一個input type="file"
按鈕。選擇文件後,我必須使用javascript讀取文件的內容。是否有可能使用javascript或ajax讀取/獲取所選文件的內容?如何閱讀使用JavaScript的文件的內容?
回答
隨着AJAX它可能讀取上傳的文件,但與純JavaScript它不可能,因爲JavaScript在客戶端而不是在服務器端工作。
如果你打算使用jquery比Ajax調用可能是這樣
$.ajax({
url: "test.html",
context: document.body,
success: function(){
$(this).addClass("done");
}
});
你不能直接使用javascript做它。您可以將文件發佈到服務器,然後使用ajax檢索內容。
JavaScript是設計不能夠訪問它正在運行的計算機。這是流氓javascript無法讀取用戶的硬盤。 雖然你可以考慮使用iframe。
這是不可能在java腳本中。請參閱Local file access with javascript
我同意上面的DoXicK。您可以先在服務器上發佈文件,然後使用Ajax來閱讀它。
這並不是完全不可能
瀏覽器通常是在一個沙箱環境中運行的JavaScript(JavaScript引擎)。
所以,你可以使用Windows腳本宿主或Internet Explorer在受信任的環境中,並使用FileSystemObject
或使用
或上傳文件到您的服務器,並使用的XMLHttpRequest對象。(在其他詞 - 阿賈克斯)
讀取文件的客戶端是硬:
How to read and write into file using JavaScript
Local file access with javascript
除非你試圖與當地的JavaScript來做到這一點:
Access Local Files with Local Javascript
或服務器端JavaScript:
http://en.wikipedia.org/wiki/Server-side_JavaScript
另外,您可以強制用戶安裝ActiveX對象:
你們都錯了的方式。有可能的。使用新的File API,您可以在將文件提交給服務器之前讀取這些文件。儘管如此,它並不適用於所有瀏覽器。
選中此示例。例如嘗試打開一個文本文件。
http://development.zeta-two.com/stable/file-api/file.html
編輯:這些問題即使國家「上傳文件」我把它解釋爲,「一個要上傳的文件」。否則,它根本就沒有意義。
+1 - 如果服務器端發揮作用,那麼它是一個簡單的解決方案,但File API確實解決了問題,但可用性仍然是一個問題。 – Anurag 2011-03-29 07:54:50
+1 - 在這裏尋找另一個教程:http://www.html5rocks.com/en/tutorials/file/dndfiles/ – 2011-12-02 13:46:55
對於IE使用FileSystemObject(可在所有Windows系統上找到)。
對於Firefox:
var file = Components.classes["@mozilla.org/file/local;1"].
createInstance(Components.interfaces.nsILocalFile);
file.initWithPath("/home");
見https://developer.mozilla.org/en/Code_snippets/File_I%2F%2FO
要了解這些方法和其他人在使用,看看TiddlyWiki應用程序,看看它是怎麼做的所有主流瀏覽器。
- 1. Javascript - 閱讀文件並比較內容
- 2. 如何閱讀使用ngFileUpload上傳的csv文件的內容?
- 3. 如何閱讀javascript中的HTML文件內容
- 4. 如何閱讀JavaScript變量中的文件內容?
- 5. 如何閱讀文件內容
- 6. 如何閱讀zip文件內容?
- 7. 如何閱讀使用JSON內容的ASCII文件:ValueError異常
- 8. 閱讀文件內容
- 9. 閱讀txt文件內容
- 10. 如何閱讀PlaceHolder的文字內容?
- 11. 閱讀文本文件的內容
- 12. Java/Javascript閱讀內容 - 處置文件內容
- 13. 如何閱讀壓縮文件的內容並保存文件
- 14. 如何在閱讀文件之前更新文件的內容?
- 15. 隨機閱讀文件夾的內容
- 16. 關於閱讀qt文件的內容
- 17. 閱讀htm文件的內容
- 18. 閱讀Java中的XML文件內容
- 19. 閱讀Rhomobile中的txt文件內容
- 20. 閱讀文件格式的內容php
- 21. psexec閱讀文件的內容
- 22. 閱讀「文件」對象的內容?
- 23. 閱讀.edb文件的內容
- 24. 閱讀共享文件的內容
- 25. Cocoa - 閱讀文件的內容?
- 26. 閱讀原始內容的PDF文件
- 27. 閱讀CSV文件的內容
- 28. 閱讀文件內容利用Java
- 29. 閱讀內容JSON文件PHP內
- 30. 我如何閱讀Vaadin上傳的文本文件內容?
我正在使用原型ajax。在發送/發佈到服務器之前是否有可能獲取所選(input type =「file」)文件的內容? – Sangam254 2011-03-29 09:00:51
我應該使用javascript解密函數解密文件中的內容。所以我需要所選文件中的內容。 – Sangam254 2011-03-29 09:02:25
我試着用postBody:document.body。它不工作.. – Sangam254 2011-03-29 10:50:35