Как создать файл при помощи JavaScript?
Модератор: Duncon
- Timofey
- Сообщения: 32
- Зарегистрирован: 28 апр 2006, 11:42
- Откуда: Владивосток
- Контактная информация:
Задача стоит такая. Есть шаблон страницы, в котором будут меняться данные и выкладываться на сайт. Я хочу сделать скрипт, который взаимодействуя с пользователем вносил бы данные в шаблон и сохранял в новом файле. Почитав топики, где затрагивается работа с файлами, я понял, что надо создавать объект ActiveX командой fso = new ActiveXObject("Scripting.FileSystemObject");. У меня не получается, FrontPage говорит, что "Невозможно создание объекта сервером программирования объектов".
И всё же у меня есть два виденья написания скрипта:
1. В результате взаимодействия с пользователем весь текст страницы (HTML код изменённого шаблона) храниться в переменной, а по окончании внесения данных значение переменной сохраняется в файле.
2. В результате взаимодействия с пользователем изменяется HTML код самого шаблона (отдельный файл), по окончании внесения данных изменённый шаблон сохраняется.
Лично я склоняюсь к первому варианту. Но я даже не представляю с какой стороны подступиться к этому вопросу. Помогите записать значение переменной в файл или изменить текст файла (если это легче или лучше). Расширение созданного файла не важно я его сам исправлю (опять же, если по другому не получается).
И всё же у меня есть два виденья написания скрипта:
1. В результате взаимодействия с пользователем весь текст страницы (HTML код изменённого шаблона) храниться в переменной, а по окончании внесения данных значение переменной сохраняется в файле.
2. В результате взаимодействия с пользователем изменяется HTML код самого шаблона (отдельный файл), по окончании внесения данных изменённый шаблон сохраняется.
Лично я склоняюсь к первому варианту. Но я даже не представляю с какой стороны подступиться к этому вопросу. Помогите записать значение переменной в файл или изменить текст файла (если это легче или лучше). Расширение созданного файла не важно я его сам исправлю (опять же, если по другому не получается).
js язык клиентского выполнения (тобишь выполняется на клиенте, впрочем как и ActiveX),, PHP тебе в помощь..
- Timofey
- Сообщения: 32
- Зарегистрирован: 28 апр 2006, 11:42
- Откуда: Владивосток
- Контактная информация:
Ну, и пускай себе выполняется на клиенте. Клиенты - это мои сотрудники, а я их сисадмин, поэтому как их компы настрою, так они и будут работать. А что JavaScript вообще с файлами не работает? Нельзя осуществить так как я задумал?
Нет нельзя, максимум кук оставить, более решения нет..
- Timofey
- Сообщения: 32
- Зарегистрирован: 28 апр 2006, 11:42
- Откуда: Владивосток
- Контактная информация:
И всё-таки я своего добиваюсь!
Если FrontPage не захотел создавать файл, IE и Maxton, после некоторых расспросов, создают, а дальше дело техники!
Может потом я перейду на PHP, но пока JavaScript (я ещё пока чайник
.
http://www.codenet.ru/webmast/js/File-Read-Write.php
P.S. в стандартной справке FrontPage тоже описываются объекты и методы работы с дисками, папками и файлами.
Если FrontPage не захотел создавать файл, IE и Maxton, после некоторых расспросов, создают, а дальше дело техники!
Может потом я перейду на PHP, но пока JavaScript (я ещё пока чайник

http://www.codenet.ru/webmast/js/File-Read-Write.php
P.S. в стандартной справке FrontPage тоже описываются объекты и методы работы с дисками, папками и файлами.
Это ActiveX а не js.. Радоваться нечему, запуск оного обычно подтверждает юзер..
Да, 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
Нормальная дока на эту и другие темы, например, Ю. Лукач «Справочник Веб-разработчика»:
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
- Timofey
- Сообщения: 32
- Зарегистрирован: 28 апр 2006, 11:42
- Откуда: Владивосток
- Контактная информация:
__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),....) ?
Всем спасибо! Тему для себя закрываю.

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