XmlCreateFile: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
CrosRoad95 (talk | contribs) (fixed example) |
||
(20 intermediate revisions by 11 users not shown) | |||
Line 2: | Line 2: | ||
{{Server client function}} | {{Server client function}} | ||
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. | 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. | ||
{{Note|To prevent memory leaks, ensure each call to [[xmlCreateFile]] has a matching call to [[xmlUnloadFile]]}} | |||
{{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== | ==Syntax== | ||
<syntaxhighlight lang="lua"> | <syntaxhighlight lang="lua"> | ||
xmlnode xmlCreateFile ( string filePath, string rootNodeName ) | xmlnode xmlCreateFile ( string filePath, string rootNodeName ) | ||
</syntaxhighlight> | </syntaxhighlight> | ||
{{OOP||[[Xml|XML]]}} | |||
===Required Arguments=== | ===Required Arguments=== | ||
*'''filePath:''' | *'''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")''. | :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")''. | :If the file is in the current resource, only the file path is necessary, e.g. ''xmlCreateFile("new.xml", "newroot")''. | ||
Line 19: | Line 20: | ||
==Example== | ==Example== | ||
This example allows a player to use the command 'createfile' to create an .xml file. | |||
<syntaxhighlight lang="lua"> | <syntaxhighlight lang="lua"> | ||
-- | -- 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) | |||
</syntaxhighlight> | </syntaxhighlight> | ||
==See Also== | ==See Also== | ||
{{XML_functions}} | {{XML_functions}} | ||
[[ | [[ru:xmlCreateFile]] |
Latest revision as of 15:53, 27 March 2018
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.
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)