Особенности, характерные для JavaScript - Часть 3
Инструменты операционной системы
Код JavaScript выполняется в контексте веб-браузера. При работе в контексте веб-браузера, доступ к локальным ресурсам системы (например, файловой системе, системному реестру и т.д.) полностью ограничен. Для JavaScript Fusion API предоставляет несколько вспомогательных функций, чтобы обеспечить доступ к этим, в противном случае ограниченным, системным ресурсам. Эти инструментальные функции позволяют сценариям выполнять такие действия, как чтение и запись файлов в файловой системе пользователя, которые обычно необходимы при написании программ, связанных с САПР. Предусмотрены следующие вспомогательные функции.
adsk.readFile
Описание
Читает и возвращает содержимое файла. Если файл не найден, не может быть открыт или прочтен, возвращается undefined. Если файла успешно прочитан, возвращается объект ArrayBuffer с массивом байтов файла.
Синтаксис
adsk.readFile(filename)
Аргументы
- filename
Полное имя файла (с путём), который следует открыть и прочитать. Тип String.
adsk.writeFile
Описание
Записывает содержимое в файл. Если данные представляют собой строки, содержимое записывается в файл с кодировкой UTF-8. Если данные представляют собой ArrayBuffer, содержимое будет записано в виде двоичных байт. Возвращает true, если данные успешно записываются в файл.
Синтаксис
adsk.writeFile(filename, data, [mode])
Аргументы
- filename
Его полное имя файла для открытия и записи. Тип String.
- data
Содержит данные для записи в файл. Тип ArrayBuffer или String.
- mode
Режим, использующийся при открытии файла. Допустимые значения: "append" и "truncate". "append" будет добавлять данные в конец существующего файла (если таковые имеются). "truncate" - по умолчанию - будет заменять существующее содержимое файла с данными.
adsk.copyFile
Описание
Копирует указанный файл или папку в место назначения. Возвращает true, если файл или папка были успешно скопированы.
Синтаксис
adsk.copyFile(fromFilename, toFilename)
Аргументы
- fromFilename
Полное имя, файла или папки, для копирования. Тип String.
- toFilename
Полное имя файла или папки назначения. Тип String.
adsk.renameFile
Описание
Переименование указанного файла или папки. Возвращает true, если файл или папка были успешно переименованы.
Синтаксис
adsk.renameFile(fromFilename, toFilename)
Аргументы
- fromFilename
Полное имя файла или папки для переименования. Тип String.
- toFilename
Полное имя нового файла или папки.
adsk.removeFile
Описание
Удаляет указанный файл или папку. Возвращает true, если файл или папка были успешно удалены.
Синтаксис
adsk.removeFile(filename)
Аргументы
- filename
Полное имя файла или папки для удаления. Тип String.
adsk.createDirectory
Описание
Создает новую папку на указанном месте. Возвращает true, если папка была создана успешно.
Синтаксис
adsk.createDirectory(filename)
Аргументы
- filename
Полный путь к новой папке. Тип String.
adsk.listDirectoryFiles
Описание
Список файлов, содержащихся в указанной папке. Возвращает массив строк, с полным именем файла для каждого результирующего файла из поиска. Возвращает undefined, если произошел сбой любого рода.
Синтаксис
adsk.listDirectoryFiles(filename, regularFilesOnly, recursive)
Аргументы
- filename
Полный путь к папке, для которого необходимо получить список файлов в нём.
- regularFilesOnly
Логическое значение, указывающее, должны ли быть возвращены только обычные файлы на диске. Если это так, то файлы такие как символьные ссылки, не будут включены в результаты.
- recursive
Логическое значение, указывающее, если надо произвести рекурсивный поиск в подкаталогах.
adsk.fileExists
Описание
Проверяет, существует ли указанный файл или папка в файловой системе. Возвращает true, если файл или папка существует.
Синтаксис
adsk.fileExists(filename)
Аргументы
- filename
Полный путь к файлу или папке, который надо искать.
adsk.fileIsDirectory
Описание
Проверяет, является ли указанный путь является папкой. Возвращает true, если по указанному пути находится папка.
Синтаксис
adsk.fileIsDirectory(filename)
Аргументы
- filename
Полный путь к папке. Тип String.
adsk.fileSize
Описание
Возвращает размер файла в байтах. Возвращает undefined при сбое. Тип Number.
Синтаксис
adsk.fileSize(filename)
Аргументы
- filename
Полное имя файла, тип String.
adsk.tempDirectory
Описание
Возвращает полный путь ко временной папке операционной системы.Возвращает undefined при сбое. Тип String.
Синтаксис
adsk.tempDirectory()
adsk.toBase64
Описание
Кодирует указанный массив байтов в строку Base64. Возвращает строку Base64.
Синтаксис
adsk.toBase64(buffer)
Аргументы
- buffer
Байты ArrayBuffer для кодирования в строку Base64.
adsk.fromBase64
Описание
Декодирует указанную строку Base64 в массив байтов. Возвращает ArrayBuffer, содержащий декодированные байты.
Синтаксис
adsk.fromBase64(encoded)
Аргументы
- encoded
Действительные кодировки Base64. Тип String,
adsk.utf8ToString
Описание
Преобразовывает указанный закодированный массив байтов UTF-8 в строку JavaScript UTF-8. Возвращает строку с результатом.
Синтаксис
adsk.utf8ToString(buffer)
Аргументы
- buffer
Uint8Array или ArrayBuffer, содержащий кодированный массив UTF-8.
Источник: http://help.autodesk.com/view/NINVFUS/ENU/?guid=GUID-C081FA71-4541-4CA5-AA08-7343EF6701B4
Обсуждение: http://adn-cis.org/forum/index.php?topic=3204
Опубликовано 15.11.2015Отредактировано 20.12.2015 в 14:32:54