Обработка файлов в JavaScript - PullRequest
2 голосов
/ 03 апреля 2012

Возможно ли в javaScript создать html-файл в том же каталоге? После некоторых поисков в Google я нашел ActiveXObject следующим образом: -

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();

Но это показывает ошибку, которая ActiveXObject не определена или не существует. Я не уверен, почему эта ошибка приходит. Этот код браузера специфичен? Я использую Chrome, и мне нужно написать HTML-файл, используя JavaScript. Пожалуйста, помогите мне, что я могу изменить в приведенном выше коде, чтобы он мог работать. Или помогите мне с другой альтернативой.

Ответы [ 2 ]

3 голосов
/ 04 апреля 2012

ActiveX Object работает только в Internet Explorer. И браузер не имеет права вносить какие-либо изменения в вашу файловую систему. Однако, если вам нужно сохранить html-страницу, вам нужно выполнить некоторые дополнительные действия, такие как отправка URL-адреса html-страницы или всей страницы в виде строки на сервер, размещение сервера на localhost с помощью tomcat, и вы можете использовать java-код для хранения извлеченных данных. URL или строка, отправленная вами на вашем компьютере. Я сделал то же самое. Если вам нужно, я могу предоставить вам код тоже. (кстати, код довольно прост). Чтобы получить страницу, используя URL, вы можете использовать библиотеку Jsoup, которая является очень хорошим анализатором HTML. Надеюсь, это поможет!

3 голосов
/ 03 апреля 2012

ActiveXObject - это единственное, что есть в IE, и даже в этом случае пользователю предлагается указать, хотят ли они его использовать или нет, и его часто предупреждают об опасностях.

По понятной причине браузер не имеет доступа к файловой системе.Представьте себе, если какой-нибудь старый сайт может записывать файлы на ваш диск!

...