XmlCreateFile: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
CrosRoad95 (talk | contribs) (fixed example) |
||
(16 intermediate revisions by 8 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:''' 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. | *'''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. | ||
Line 29: | Line 15: | ||
:Note that if a different resource than default is being accessed, the caller resource needs access to general.ModifyOtherObjects in the [[ACL]]. | :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. | *'''rootNodeName:''' the name of the root node in the XML document. | ||
===Returns=== | ===Returns=== | ||
Line 42: | Line 20: | ||
==Example== | ==Example== | ||
This example allows a player to use the command 'createfile' to create an .xml file. | 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". | -- Creates a file named "new.xml" with root node "newroot" and childnode "newchild". | ||
function createFileHandler() | function createFileHandler() | ||
local | local rootNode = xmlCreateFile("new.xml","newroot") | ||
local | local childNode = xmlCreateChild(rootNode, "newchild") | ||
xmlSaveFile( | xmlSaveFile(rootNode) | ||
xmlUnloadFile(rootNode) | |||
end | end | ||
addCommandHandler("createfile", createFileHandler) | 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)