User Tools

Site Tools


en:code:data:inifile

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

en:code:data:inifile [2016/10/09 09:10]
en:code:data:inifile [2020/02/09 13:26] (current)
Line 1: Line 1:
 +====== IniFile ======
 +This object allows you to read and write to a INI file.
  
 +===== Quick Use =====
 +Usable example:
 +<code javascript>​
 +var myObject= new IniFile();
 +myObject.load("​config.ini"​);​
 +myObject.setSection("​SomeSettingsSection"​);​
 +if (myObject.keyExists("​SomeKey"​)){
 + mytext = myObject.keyValue("​SomeKey"​);​
 + newtext = mytext + "​Bar";​
 + myObject.setKeyValue("​SomeKey",​ newtext);
 +}else{
 + myObject.setKeyValue("​SomeKey",​ "​Foo"​ );
 + mytext = cfgini.keyValue("​SomeKey"​);​
 +}
 +myObject.save("​config.ini"​);​
 +</​code>​
 +Will result in value "​Bar"​ being appended ever run, except first. ​ Defaults to "​Foo"​ if Key is unset:
 +===== Functions =====
 +
 +==== IniFile ====
 +Constructor function.
 +
 +=== Syntax ===
 +<code javascript>​
 +var myObject = new IniFile();
 +</​code>​
 +<code javascript>​
 +var myObject = new IniFile(parameters);​
 +</​code>​
 +
 +=== Arguments ===
 +  - parameters - (object) parameters
 +    * delimiter - (char) the delimiter to use
 +    * commentchar - (char) the comment character
 +    * encoding - ([[en:​code:​core:​global#​encoding|Encoding]]) the encoding to use
 +
 +=== Exceptions ===
 +  * (ParameterTypeError) incorrect parameter type
 +  * (ParameterCountError) incorrect parameter count
 +
 +=== Example ===
 +Create a IniFile object.
 +<code javascript>​
 +var myObject = new IniFile();
 +</​code>​
 +Create a IniFile object with parameters.
 +<code javascript>​
 +var myObject = new IniFile({
 + delimiter: "​=",​
 + commentCharacter:​ "​$"​
 +});
 +</​code>​
 +
 +===== Methods =====
 +
 +==== load ====
 +Loads a file.
 +
 +=== Syntax ===
 +<code javascript>​
 +myObject.load(filename);​
 +</​code>​
 +
 +=== Arguments ===
 +  - filename - (string) the filename of the file to open
 +
 +=== Returns ===
 +  * (IniFile) this IniFile
 +
 +=== Exceptions ===
 +  * (LoadFileError) cannot load the file
 +
 +==== save ====
 +Saves a file.
 +
 +=== Syntax ===
 +<code javascript>​
 +myObject.save(filename);​
 +</​code>​
 +
 +=== Arguments ===
 +  - filename - (string) the filename of the file to save
 +
 +=== Returns ===
 +  * (IniFile) this IniFile
 +
 +=== Exceptions ===
 +  * (SaveFileError) cannot save the file
 +
 +==== clear ====
 +Clear the file.
 +
 +=== Syntax ===
 +<code javascript>​
 +myObject.clear();​
 +</​code>​
 +
 +=== Returns ===
 +  * (IniFile) this IniFile
 +
 +==== preserveDeletedData ====
 +Preserve the deleted data as comments.
 +
 +=== Syntax ===
 +<code javascript>​
 +myObject.preserveDeletedData(preserve);​
 +</​code>​
 +
 +=== Arguments ===
 +  - preserve - (boolean) should the deleted data preserved as comments
 +
 +=== Returns ===
 +  * (IniFile) this IniFile
 +
 +==== setDelimiter ====
 +Set the value/data delimiter. Default is =.
 +
 +=== Syntax ===
 +<code javascript>​
 +myObject.setDelimiter(delimiter);​
 +</​code>​
 +
 +=== Arguments ===
 +  - delimiter - (char) the delimiter to use
 +
 +=== Returns ===
 +  * (IniFile) this IniFile
 +
 +==== setCommentCharacter ====
 +Set the comment character. Default is #.
 +
 +=== Syntax ===
 +<code javascript>​
 +myObject.setCommentCharacter(commentchar);​
 +</​code>​
 +
 +=== Arguments ===
 +  - commentchar - (char) the comment character
 +
 +=== Returns ===
 +  * (IniFile) this IniFile
 +
 +==== setSection ====
 +Sets the current INI section.
 +
 +=== Syntax ===
 +<code javascript>​
 +myObject.setSection(sectionName);​
 +</​code>​
 +<code javascript>​
 +myObject.setSection(sectionName,​ create);
 +</​code>​
 +
 +=== Arguments ===
 +  - sectionName - (string) the section name
 +  - create - (boolean) create the section if it doesn'​t exists (default: true)
 +
 +=== Returns ===
 +  * (IniFile) this IniFile
 +
 +=== Exceptions ===
 +  * (FindSectionError) cannot find the section
 +
 +==== setEncoding ====
 +Sets the encoding to use.
 +
 +=== Syntax ===
 +<code javascript>​
 +myObject.setEncoding(encoding);​
 +</​code>​
 +
 +=== Arguments ===
 +  - encoding - ([[en:​code:​core:​global#​encoding|Encoding]]) the encoding to use
 +
 +=== Returns ===
 +  * (IniFile) this IniFile
 +
 +==== sectionAt ====
 +Returns the section name at index **sectionIndex**.
 +
 +=== Syntax ===
 +<code javascript>​
 +myObject.sectionAt(sectionIndex);​
 +</​code>​
 +
 +=== Arguments ===
 +  - sectionIndex - (integer) the section index
 +
 +=== Returns ===
 +  * (string) the section name
 +
 +=== Exceptions ===
 +  * (FindSectionError) cannot find the section
 +
 +==== deleteSection ====
 +Deletes a section.
 +
 +=== Syntax ===
 +<code javascript>​
 +myObject.deleteSection(sectionName);​
 +</​code>​
 +
 +=== Arguments ===
 +  - sectionName - (string) the section name
 +
 +=== Returns ===
 +  * (IniFile) this IniFile
 +
 +=== Exceptions ===
 +  * (FindSectionError) cannot find the section
 +
 +==== sectionCount ====
 +Returns the number of sections.
 +
 +=== Syntax ===
 +<code javascript>​
 +myObject.sectionCount();​
 +</​code>​
 +
 +=== Returns ===
 +  * (integer) the section count
 +
 +==== keyExists ====
 +Returns true if a key with **keyName** exists.
 +
 +=== Syntax ===
 +<code javascript>​
 +myObject.keyExists(keyName);​
 +</​code>​
 +
 +=== Arguments ===
 +  - keyName - (string) the key name
 +
 +=== Returns ===
 +  * (boolean) true if a key with **keyName** exists
 +
 +==== keyAt ====
 +Returns the name of the key at index **keyIndex**.
 +
 +=== Syntax ===
 +<code javascript>​
 +myObject.keyAt(keyIndex);​
 +</​code>​
 +
 +=== Arguments ===
 +  - keyIndex - (integer) the key index
 +
 +=== Returns ===
 +  * (string) the key name
 +
 +=== Exceptions ===
 +  * (KeyError) cannot find the key
 +
 +==== keyValue ====
 +Returns the value of the key **keyName**.
 +
 +=== Syntax ===
 +<code javascript>​
 +myObject.keyValue(keyName);​
 +</​code>​
 +
 +=== Arguments ===
 +  - keyName - (string) the key name
 +
 +=== Returns ===
 +  * (string) the key value
 +
 +=== Exceptions ===
 +  * (KeyError) cannot find the key
 +==== setKeyValue ====
 +Sets the value of the key **keyName**.
 +
 +=== Syntax ===
 +<code javascript>​
 +myObject.setKeyValue(keyName,​ value);
 +</​code>​
 +
 +=== Arguments ===
 +  - keyName - (string) the key name
 +  - value - (string) the key value
 +
 +=== Returns ===
 +  * (IniFile) this IniFile
 +
 +==== deleteKey ====
 +Delete the key **keyName**.
 +
 +=== Syntax ===
 +<code javascript>​
 +myObject.deleteKey(keyName);​
 +</​code>​
 +
 +=== Arguments ===
 +  - keyName - (string) the key name
 +
 +=== Returns ===
 +  * (IniFile) this IniFile
 +
 +=== Exceptions ===
 +  * (KeyError) cannot find the key
 +
 +==== keyCount ====
 +Returns the key count.
 +
 +=== Syntax ===
 +<code javascript>​
 +myObject.keyCount();​
 +</​code>​
 +
 +=== Returns ===
 +  * (integer) the key count