XmlCreateFile

From Multi Theft Auto: Wiki
Jump to: navigation, search

This function creates a new XML document, which can later be saved to a file by using xmlSaveFile. This function will overwrite the file specified if it already exists.

[[{{{image}}}|link=]] Note: To prevent memory leaks, ensure each call to xmlCreateFile has a matching call to xmlUnloadFile
[[{{{image}}}|link=]] Tip: If you do not want to share the content of the created file with other servers, prepend the file path with @ (See filepath for more information)

Syntax

xmlnode xmlCreateFile ( string filePath, string rootNodeName )

OOP Syntax Help! I don't understand this!

Method: XML(...)

Required Arguments

  • filePath: The filepath of the file in the following format: ":resourceName/path". 'resourceName' is the name of the resource the file will be in, and 'path' is the path from the root directory of the resource to the file.
For example, if you want to create a file named 'new.xml' in the resource 'ctf', it can be created from another resource this way: xmlCreateFile(":ctf/new.xml", "newroot").
If the file is in the current resource, only the file path is necessary, e.g. xmlCreateFile("new.xml", "newroot").
Note that if a different resource than default is being accessed, the caller resource needs access to general.ModifyOtherObjects in the ACL.
  • rootNodeName: the name of the root node in the XML document.

Returns

Returns the root xmlnode object of the new XML file if successful, or false otherwise.

Example

This example allows a player to use the command 'createfile' to create an .xml file.

-- Creates a file named "new.xml" with root node "newroot" and childnode "newchild".
function createFileHandler()
   local rootNode = xmlCreateFile("new.xml","newroot")
   local childNode = xmlCreateChild(rootNode, "newchild")
   xmlSaveFile(rootNode)
   xmlUnloadFile(rootNode)
end

addCommandHandler("createfile", createFileHandler)

See Also