====== IniFile ====== This object allows you to read and write to a INI file. ===== Quick Use ===== Usable example: 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"); Will result in value "Bar" being appended ever run, except first. Defaults to "Foo" if Key is unset: ===== Functions ===== ==== IniFile ==== Constructor function. === Syntax === var myObject = new IniFile(); var myObject = new IniFile(parameters); === 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. var myObject = new IniFile(); Create a IniFile object with parameters. var myObject = new IniFile({ delimiter: "=", commentCharacter: "$" }); ===== Methods ===== ==== load ==== Loads a file. === Syntax === myObject.load(filename); === 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 === myObject.save(filename); === 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 === myObject.clear(); === Returns === * (IniFile) this IniFile ==== preserveDeletedData ==== Preserve the deleted data as comments. === Syntax === myObject.preserveDeletedData(preserve); === Arguments === - preserve - (boolean) should the deleted data preserved as comments === Returns === * (IniFile) this IniFile ==== setDelimiter ==== Set the value/data delimiter. Default is =. === Syntax === myObject.setDelimiter(delimiter); === Arguments === - delimiter - (char) the delimiter to use === Returns === * (IniFile) this IniFile ==== setCommentCharacter ==== Set the comment character. Default is #. === Syntax === myObject.setCommentCharacter(commentchar); === Arguments === - commentchar - (char) the comment character === Returns === * (IniFile) this IniFile ==== setSection ==== Sets the current INI section. === Syntax === myObject.setSection(sectionName); myObject.setSection(sectionName, create); === 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 === myObject.setEncoding(encoding); === 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 === myObject.sectionAt(sectionIndex); === Arguments === - sectionIndex - (integer) the section index === Returns === * (string) the section name === Exceptions === * (FindSectionError) cannot find the section ==== deleteSection ==== Deletes a section. === Syntax === myObject.deleteSection(sectionName); === Arguments === - sectionName - (string) the section name === Returns === * (IniFile) this IniFile === Exceptions === * (FindSectionError) cannot find the section ==== sectionCount ==== Returns the number of sections. === Syntax === myObject.sectionCount(); === Returns === * (integer) the section count ==== keyExists ==== Returns true if a key with **keyName** exists. === Syntax === myObject.keyExists(keyName); === 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 === myObject.keyAt(keyIndex); === 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 === myObject.keyValue(keyName); === 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 === myObject.setKeyValue(keyName, value); === Arguments === - keyName - (string) the key name - value - (string) the key value === Returns === * (IniFile) this IniFile ==== deleteKey ==== Delete the key **keyName**. === Syntax === myObject.deleteKey(keyName); === Arguments === - keyName - (string) the key name === Returns === * (IniFile) this IniFile === Exceptions === * (KeyError) cannot find the key ==== keyCount ==== Returns the key count. === Syntax === myObject.keyCount(); === Returns === * (integer) the key count