JScript и файловый ввод - вывод
Программы и данные в компьютере могут храниться в файлах, причем не обязательно текстового формата. Считывание и запись информации в текстовых
файлах - достаточно тривиальная задача:
- Считываем содержимое текстового файла в переменную JScript:
-
var fso = new ActiveXObject("Scripting.FileSystemObject")
var read = fso.OpenTextFile("C:\\autoexec.bat")
var text = ""
if (!read.AtEndOfStream) text = read.ReadAll();
read.Close()
- Записываем текст из переменной JScript в текстовый файл:
-
var fso = new ActiveXObject("Scripting.FileSystemObject")
var read = fso.OpenTextFile("C:\\test.txt",2,true) // 8 - Append
var text = "Hello World"
read.Write(text)
read.Close()
Чтение бинарного файла средствами JScript
Если Вы попытаетесь с помощью приведенных выше фрагментов работать с бинарным файлом, то код "слетит" с ошибкой периода времени выполнения.
Работать с содержимым двоичных файлов средствами объекта ActiveX с progID = Scripting.FileSystemObject невозможно.
Если у Вас достаточно "свежая" версия Windows, или Вы устанавливали
пакет MDAC (Microsoft Data Access Component), то Вы можете воспользоваться объектом ADODB.Stream для решения этой задачи.
- Считывание содержимого бинарного файла:
-
function GetBinaryFile(PathToFile)
{
var stream = new ActiveXObject("ADODB.Stream")
stream.type = 1 // Binary mode
stream.Open()
stream.LoadFromFile(PathToFile)
var GetFile = stream.Read()
stream.Close()
return GetFile
}
- Запись двоичных данных из переменной в бинарный файл:
-
function PutBinaryFile(PathToFile, Content)
{
var stream = new ActiveXObject("ADODB.Stream")
stream.type = 1 // Binary mode
stream.Open()
stream.Write(Content)
stream.SaveToFile(PathToFile,2) //overwrite
stream.Close()
}
|