Страница 1 из 1
Как создать файл при помощи JavaScript?
Добавлено: 14 янв 2007, 10:01
Timofey
Задача стоит такая. Есть шаблон страницы, в котором будут меняться данные и выкладываться на сайт. Я хочу сделать скрипт, который взаимодействуя с пользователем вносил бы данные в шаблон и сохранял в новом файле. Почитав топики, где затрагивается работа с файлами, я понял, что надо создавать объект ActiveX командой fso = new ActiveXObject("Scripting.FileSystemObject");. У меня не получается, FrontPage говорит, что "Невозможно создание объекта сервером программирования объектов".
И всё же у меня есть два виденья написания скрипта:
1. В результате взаимодействия с пользователем весь текст страницы (HTML код изменённого шаблона) храниться в переменной, а по окончании внесения данных значение переменной сохраняется в файле.
2. В результате взаимодействия с пользователем изменяется HTML код самого шаблона (отдельный файл), по окончании внесения данных изменённый шаблон сохраняется.
Лично я склоняюсь к первому варианту. Но я даже не представляю с какой стороны подступиться к этому вопросу. Помогите записать значение переменной в файл или изменить текст файла (если это легче или лучше). Расширение созданного файла не важно я его сам исправлю (опять же, если по другому не получается).
Re: Как создать файл при помощи JavaScript?
Добавлено: 14 янв 2007, 12:18
Duncon
js язык клиентского выполнения (тобишь выполняется на клиенте, впрочем как и ActiveX),, PHP тебе в помощь..
Re: Как создать файл при помощи JavaScript?
Добавлено: 14 янв 2007, 16:17
Timofey
Ну, и пускай себе выполняется на клиенте. Клиенты - это мои сотрудники, а я их сисадмин, поэтому как их компы настрою, так они и будут работать. А что JavaScript вообще с файлами не работает? Нельзя осуществить так как я задумал?
Re: Как создать файл при помощи JavaScript?
Добавлено: 14 янв 2007, 22:53
Duncon
Нет нельзя, максимум кук оставить, более решения нет..
Re: Как создать файл при помощи JavaScript?
Добавлено: 15 янв 2007, 15:24
Timofey
И всё-таки я своего добиваюсь!
Если FrontPage не захотел создавать файл, IE и Maxton, после некоторых расспросов, создают, а дальше дело техники!
Может потом я перейду на PHP, но пока JavaScript (я ещё пока чайник

.
http://www.codenet.ru/webmast/js/File-Read-Write.php
P.S. в стандартной справке FrontPage тоже описываются объекты и методы работы с дисками, папками и файлами.
Re: Как создать файл при помощи JavaScript?
Добавлено: 15 янв 2007, 17:40
Duncon
Это ActiveX а не js.. Радоваться нечему, запуск оного обычно подтверждает юзер..
Re: Как создать файл при помощи JavaScript?
Добавлено: 16 янв 2007, 13:44
__Yuri__
Да, ActiveX FileSystemObject прекрасно работает с текстовыми файлами - я в последнее время пишу конвенторы из формата одной программы обработки данных в другую именно на JavaScript + ActiveX. Минус - работает только под IE, но я применяю HTA (HTML application) - тогда и для пользователя выглядит как обычное приложение и всяких вопросов по безопасности не задает. Разумеется, никакого отношения к HTML серверу данная технология не имеет - юзается файловая система компьютера, на котором запущен скрипт.
Нормальная дока на эту и другие темы, например, Ю. Лукач «Справочник Веб-разработчика»:
3.14.2. Файловая система: объект FileSystemObject
Свойство Drives
Метод BuildPath
Метод CopyFile
Метод CopyFolder
Метод CreateFolder
Метод CreateTextFile
Метод DeleteFile
Метод DeleteFolder
Метод DriveExists
Метод FileExists
Метод FolderExists
Метод GetAbsolutePathName
Метод GetBaseName
Метод GetDrive
Метод GetDriveName
Метод GetExtensionName
Метод GetFile
Метод GetFileName
Метод GetFolder
Метод GetParentFolderName
Метод GetSpecialFolder
Метод GetTempName
Метод MoveFile
Метод MoveFolder
Метод OpenTextFile
Глава 3.15. Исполняющая система JScript (продолжение)
3.15.1. Диски: объект Drive
Свойство AvailableSpace
Свойство DriveLetter
Свойство DriveType
Свойство FileSystem
Свойство FreeSpace
Свойство IsReady
Свойство Path
Свойство RootFolder
Свойство SerialNumber
Свойство ShareName
Свойство TotalSize
Свойство VolumeName
3.15.2. Файлы: объект File
Свойство Attributes
Свойство DateCreated
Свойство DateLastAccessed
Свойство DateLastModified
Свойство Drive
Свойство Name
Свойство ParentFolder
Свойство Path
Свойство ShortName
Свойство ShortPath
Свойство Size
Свойство Type
Метод Copy
Метод Delete
Метод Move
Метод OpenAsTextStream
3.15.3. Папки: объект Folder
Свойство Attributes
Свойство DateCreated
Свойство DateLastAccessed
Свойство DateLastModified
Свойство Drive
Свойство Files
Свойство IsRootFolder
Свойство Name
Свойство ParentFolder
Свойство Path
Свойство ShortName
Свойство ShortPath
Свойство Size
Свойство SubFolders
Свойство Type
Метод Copy
Метод CreateTextFile
Метод Delete
Метод Move
3.15.4. Текстовые файлы: объект TextStream
Свойство AtEndOfLine
Свойство AtEndOfStream
Свойство Column
Свойство Line
Метод Close
Метод Read
Метод ReadAll
Метод ReadLine
Метод Skip
Метод SkipLine
Метод Write
Метод WriteBlankLines
Метод WriteLine
Re: Как создать файл при помощи JavaScript?
Добавлено: 16 янв 2007, 16:10
Timofey
__Yuri__, спасибо. Буду пользоваться как справочником

. Правда я не знаю как применять HTA, но я планирую в дальнейшем перейти на РНР (только будет это не скоро).
Duncon, я конечно не писал прямо, что сотрудники ОБЯЗАНЫ будут создавать по шаблону страницы программ, но вопрос был в другом: "Как создать файл при помощи JavaScript?". Легче и быстрее создавать страницу с дружеским интерфейсом, который направляет строго по шаблону и сохраняет так как мне надо, чем набивать и править в редакторе HTML. Тем более мои сотрудники выравнивают строки в Word'e пробелами ...что уж говорить об Web-страницах. Простой пример:
Надо ввести 15-20 дат в 5-ти месяцах, как проще потыкать на календаре мышкой или ввести вручную каждую дату
var zaezd = new Array(new Date(2007,0,14),new Date(2007,4,28),....) ?
Всем спасибо! Тему для себя закрываю.