2013-02-09 2 views
2

Мне интересно, есть ли какой-либо способ чтения файла на стороне клиента с javascript с указанием имени файла и пути. Я знаю способ чтения через: input type="file".Альтернатива типу ввода = «файл» для чтения файла в javascript

Что я имею в виду, не открывая браузер файлов и не выбирая файл, просто читая его с именем файла, например fopen.
Если нет другого метода, как создать экземпляр объекта File в javascript из имени файла и пути?

Увидев ответы, я подумал о том, чтобы немного рассказать о моей цели. Я действительно не делаю веб-страницу. Я использую браузер, как программное обеспечение, доступное в любой системе. Все html-страницы будут локальными. Я делаю так, чтобы у меня было преимущество силы js. Учитывая эту ситуацию, есть ли способ установить флаги разрешения, которые позволят ему читать файлы? Спасибо.

ответ

4

Там в Drag 'n Drop API, который будет другой вариант в чтение файлов с помощью JS


Там всегда будет препятствия, так что ваш код не будет непосредственно читать из файловой системы клиента. Это предназначено для обеспечения конфиденциальности и безопасности.

  • Расширения/Плагины - песочница будет вашим врагом, ограничивая доступ к файловой системе

  • Java Applet - Требуется подписанный сертификат для чтения файловой системы. Самозаверяющий сертификат будет генерировать подсказку «Будете ли вы доверять этому аплетту», которая будет действовать в качестве подсказки безопасности.

  • Тип входа = файл - дает пользователю возможность выбрать файлы или не

  • перетаскивание - дает пользователю возможность перетащить в файлах или не

  • XHR - Same Origin Политика блокирует вас, особенно если вы выполняете страницу локально, а не на сервере.

  • JSONP - Так как это обходит SOP, ваш файл должен быть в формате JSONP.

+0

Эй вы можете увидеть мое редактирование? –

0

Я нашел решение моей проблемы, вот оно ... Это правда, что у нас есть ограничение с JavaScript, что всякий раз, когда пользователь или запросы страниц в файл он должен пройти через это дополнительное окно, pops up, , но если все файлы, которые вы можете запросить, находятся в известной папке, тогда вы можете попросить пользователя указать вместо этого папку с zipped. Для открытия файла, который требуется в папке с zipped, можно использовать такие инструменты, как zip.js. Спасибо :)