scFile – Användning¶
writeTo¶
Skriver en tidsstämplad rad till en fil. Raden läggs till i slutet av filen.
Parametrar
| Parameter | Typ | Beskrivning |
|---|---|---|
string |
String |
Texten som ska skrivas |
path |
String (valfri) |
Sökväg till filen. Används skriptets standardvärde om det utelämnas. |
creation |
Constant (valfri) |
Hur filen ska öppnas/skapas. Standardvärde är OPEN_ALWAYS. Möjliga värden: CREATE_NEW, CREATE_ALWAYS, OPEN_EXISTING, OPEN_ALWAYS, TRUNCATE_EXISTING. |
Varje rad som skrivs formateras automatiskt som:
Exempel
// Använd standardsökvägen
scFile.writeTo("Rörelselarm aktiverat");
// Ange egen sökväg
scFile.writeTo("Temperaturgräns nådd", "C:/Ethiris/Log/temperatur.txt");
readFrom¶
Läser hela innehållet i en fil och returnerar det som en sträng.
Parametrar
| Parameter | Typ | Beskrivning |
|---|---|---|
path |
String (valfri) |
Sökväg till filen. Används skriptets standardvärde om det utelämnas. |
Returvärde: String – filens hela innehåll.
Filen måste finnas
readFrom öppnar filen med OPEN_EXISTING. Om filen inte finns uppstår ett fel som loggas i Debug-panelen.
// Läs från standardsökvägen
var content = scFile.readFrom();
// Läs från specifik fil
var content = scFile.readFrom("C:/Ethiris/Log/temperatur.txt");
Debug.Print(content);
Skriptet¶
//***********************************************//
// The purpose of this script library
// is to add functions for writing
// and reading from a local file.
// Version 1.0 (2022-06-13)
// Copyright © 2022 Kentima AB. No rights reserved.
//***********************************************//
try
{
//Initialize variables
var PATH = "C:/Ethiris/Log/FileName.txt"; //Path to file, folder MUST exist.
var CREATION = OPEN_ALWAYS; // Value can be CREATE_NEW, CREATE_ALWAYS, OPEN_EXISTING, OPEN_ALWAYS, TRUNCATE_EXISTING
//Define date and time function
var dateAndTime = function()
{
try
{
return (new Date()).toString("iso"); //Will return current local date and time in the format 'YYYY-MM-DD HH:mm:ss.zzz'. Format can also be "compact" and "long".
}
catch(e)
{
Debug.Print("scFile.dateAndTime(): " + e); //Print to Debug Output Panel, if something goes wrong.
}
}
//Define write function
this.writeTo = function(string, path, creation)
{
try
{
path = ((path == undefined || path == "") ? PATH : path); //If parameters are empty or not defined, use this.PATH
creation = ((creation == undefined || creation == "") ? CREATION : creation); //If parameters are empty or not defined, use this.CREATION
var now = dateAndTime(); //Get date and time of "now".
var file = new File(path, creation); //Open file
file.setFilePointer(FILE_END); //Set file to point at end of file, value can be FILE_BEGIN, FILE_END, FILE_END
file.write(now + " - " + string + "\r\n"); //Write date(now), data(string) and add carriage return and new line(\r\n)
file.close(); //Close the file.
}
catch(e)
{
Debug.Print("scFile.writeTo(): " + e); //Print to Debug Output Panel, if something goes wrong.
}
}
//Define read function
this.readFrom = function(path)
{
try
{
path = ((path == undefined || path == "") ? PATH : path); //If parameters are empty or not defined, use this.PATH
var file = new File(path, OPEN_EXISTING); //Open an existing file
var readData = file.read(); //Read all data from file
file.close(); //Close file
return readData; //Return the data read from file as String
}
catch(e)
{
Debug.Print("scFile.readFrom(): " + e); //Print to Debug Output Panel, if something goes wrong.
}
}
}
catch(e)
{
Debug.Print("scFile: " + e); //Print to Debug Output Panel, if something goes wrong.
}