2009-08-24 3 views
5

Возможно ли прочитать файл с пути в JavaScript и создать байт [] этого файла?Файл JavaScript для байта []

+0

Я думаю, вы должны дать нам больше информации о том, что именно вы пытаетесь сделать. –

ответ

5

Существует две формы JavaScript: клиентская и серверная. В клиентском JavaScript это невозможно, тогда как на серверном JavaScript это возможно. Это зависит от того, используете ли вы клиентский или серверный JavaScript.

Тем не менее, клиентский JavaScript гораздо более распространен, и если вы используете серверный JavaScript, вы, вероятно, знаете ответ на свой вопрос. Поэтому я собираюсь выйти на конечность и сказать, что нет, это невозможно прочитать с пути в JavaScript и создать байт [] из этого файла.

(Кроме того, неясно, что вы подразумеваете под байтом []; это не общая нотация при использовании JavaScript. Вы уверены, что не говорите о Java? Java полностью отличается от JavaScript: в байте Java [] является более распространенным нотация)

+1

Я считаю, что он просто хотел узнать, может ли он загружать байты файла в массив. Javascript не имеет этих обозначений, но массив чисел будет по существу делать то же самое. У вас есть ссылки на серверный JavaScript? Я не использовал javascript на стороне сервера, и мне интересно, где он используется. – Zoidberg

+0

Zoidberg, посмотрите на http://en.wikipedia.org/wiki/Server-side_JavaScript –

+0

как вы это сделаете на серверном javascript?Это гораздо более распространено сейчас в 2015 году, но все ответы на этот вопрос на этом веб-сайте касаются клиентских js – CQM

4

№. JavaScript предназначен специально для того, чтобы иметь минимальное количество файлов IO (думаю, куки), поскольку разрешение доступа к произвольным файлам (локальным и удаленным) будет представлять собой серьезный риск для безопасности.

+1

Для всех, кто пишет о файле-i/o и угрозе безопасности: для веб-браузера, выполняемого в браузере, файл i/o представляет угрозу безопасности. Однако не зависит от языка программирования. Риск, как указано здесь, в основном применим ко всем языкам программирования. – gimpf

18

Да, вы можете - в Firefox, так или иначе.. Другие браузеры могут или не могут разрешить это в будущем.

Сделать поле для загрузки файла, чтобы пользователь мог выбрать файл и прочитать его через список input.files. например. document.getElementById('myuploadfield').files[0].getAsBinary(). Это ставит каждый байт в один символ строки JavaScript, который близок к байту [], как вы собираетесь получить.

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

+1

, направленных на соответствующую и интересную информацию. –

+0

+1 .. что Мехмет сказал – rennat

3

Вы, кажется, совершенно забытые мобильные платформы и javascript, предназначенные для запуска без флагов безопасности, установленных так же. Я получаю доступ к своим файлам в моем javascript-коде, который работает на моем iPhone. Вы просто не можете получить доступ к файловой системе пользователей, только ваша собственная файловая система, которая в основном представляет собой папку, изолированную от остальной системы.

Sp. Его вопрос был совершенно верен. Также вы должны искать Javascript blobs (двоичные большие объекты) и типизированные массивы. Вы можете выделять «обычные» байты, слова и longword массивы в JS, но люди редко используют их.

Смежные вопросы