5

Tôi đang viết một ứng dụng web ngoại tuyến cho phép người dùng chọn tệp cục bộ, sửa đổi và lưu một bản sao cục bộ. Là nó có thể mà không có bất kỳ máy chủ (tôi có thể tải lên một tập tin và trả lại base64 của nó, nhưng nó không phải là nhiều của một diễn đàn)? Ứng dụng chỉ cần làm việc trên Google Chrome, vì vậy có lẽ tôi nên xem ở đây?Tải nội dung của một tệp cục bộ mà không cần tải lên

Trả lời

3

HTML5 file API có thể chứng minh hữu ích

http://www.html5rocks.com/en/tutorials/file/dndfiles/

+0

Đặc điểm kỹ thuật này hiện chỉ cho phép các tệp trong hộp cát của người dùng. :( – Microfed

+0

Hmmm nó có vẻ làm việc cho tôi :) Cảm ơn! – suda

+0

HTML5 là tương lai! Sử dụng điều này để phát triển trong tương lai – Skeen

2
input = document.getElementById(inputId);   

var reader = new FileReader(); 

reader.onload = function (e) { 
    base64 = e.target.result; 
}; 

reader.readAsDataURL(input.files[0]); 

nơi đầu vào là một yếu tố <input type='file'></input>. Cũng làm việc cho một đầu vào có thể chọn nhiều tập tin.

-1

Để làm việc với các tệp trong trình duyệt, tôi sử dụng downloadify. Để làm cho nó hoạt động với các đường dẫn có chứa "file: //", bạn cần cho phép downloadify.swf truy cập vào hệ thống tệp trên settings.

+0

Downvote để sử dụng đèn flash? – GAgnew

+0

Tôi đoán rằng bạn đang downvoted vì OP nói "không có bất kỳ máy chủ", và ai đó nhìn thấy 'file: //' trong câu trả lời của bạn. Ở đây, có +1 cho 0. –

+0

Không có máy chủ. "file: //" xuất hiện ở đây vì chính sách bảo mật của Adobe. Tệp SWF được biên dịch cho mạng hoặc làm việc với hệ thống tệp cục bộ. Downloadify.swf được biên dịch để làm việc với mạng, do đó có quyền truy cập hạn chế vào hệ thống tệp. – Microfed

Các vấn đề liên quan