Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   записать строку в файл ".txt" (https://javascript.ru/forum/misc/48290-zapisat-stroku-v-fajjl-txt.html)

Александр_1997 28.06.2014 00:40

записать строку в файл ".txt"
 
как записать строку в файл ".txt" с помощью js?

foo 28.06.2014 01:34

Цитата:

Сообщение от Александр_1997
как записать строку в файл ".txt" с помощью js?

Тебе на клиенте или на сервере? Если на клиенте, то никак, нет в браузерах доступа к ФС. А если на сервере, например в node
fs=require("fs")
fs.writeFileSync("txt.txt", "my text",  "ascii")

Erolast 28.06.2014 07:26

javascript передается сервером в браузер как обычный текст, и браузер его исполняет. Разумеется, ни к файловой системе клиента, ни к файловой системе сервера он доступа иметь впринципе может.
Если тебе нужно сохранить какую-то информацию для клиента - для этого можно использовать cookies или localStorage. cookies поддерживается везде, но имеет ограничения по объему хранимой информации, то есть, всякие тексты там хранить не получится. localStorage поддерживается лишь в современных браузерах, зато хранить может мегабайты.

Aetae 28.06.2014 08:07

Для чистоты: IE запущенный на локальном компьютере, таки имеет доступ к fs.
Если надо отдать файл клиенту, то в современных браузерах можно сделать так:
<script>
var text = 'как записать строку в файл ".txt" с помощью js?';
document.write(
    '<a href="data:text/plain;charset=utf-8,%EF%BB%BF' + encodeURIComponent(text) + '" download="text.txt">text.txt</a>'
)
</script>

foo 28.06.2014 08:55

Цитата:

Сообщение от Aetae
IE запущенный на локальном компьютере, таки имеет доступ к fs.

То есть все имеют, независимо от версии?

Aetae 28.06.2014 09:01

foo, на счёт самых новых хз, но скорее всего да. Ибо ie как был сильно интегрирован в систему так и остался.

nverv 28.06.2014 10:41

Aetae, это имитация закрузки текстового файла с сервера средствами js ?

расшифруй пожста тег <а>

и наверное же можно и без document.write это сделать?
чота пока туплю в этом разделе

и еще не упомянут способ экспорта текста через буфер обмена системы

MallSerg 28.06.2014 11:29

http://www.html5rocks.com/ru/tutorials/file/filesystem/
Жаль что это изолированная песочница =(

Aetae 28.06.2014 12:28

nverv, Data:_URL и новый атрибут "download", который принудительно говорит скачать, а не открыть содержимое ссылки; document.write конечно не нужен, просто наиболее лаконичен в данном случае.

foo 28.06.2014 12:47

Цитата:

Сообщение от Aetae
document.write конечно не нужен

А почему к этой функции как-то странно-негативно относятся в JS-комьюнити? Что в ней плохого?


Часовой пояс GMT +3, время: 15:00.