TinyXML:将文档保存为 char * 或字符串
我尝试使用 TinyXML 从内存中读取和保存,而不是仅读取文件并将其保存到磁盘。
看来文档的解析函数可以加载一个char *。 但是当我完成后,我需要将文档保存到 char * 中。 有人知道这件事吗?
编辑:打印和编辑 流媒体功能不是我正在寻找的。 它们以可视格式输出,我需要实际的 xml 内容。
编辑:打印很酷。
I'm attempting to use TinyXML to read and save from memory, instead of only reading and saving files to disk.
It seems that the documnent's parse function can load a char *. But then I need to save the document to a char * when I'm done with it. Does anyone know about this?
Edit: The printing & streaming functions aren't what I'm looking for. They output in a viewable format, I need the actual xml content.
Edit: Printing is cool.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
不太明白你在说什么; 你的问题不清楚。 我猜您想要将文件加载到内存中,以便可以将其传递给文档解析函数。 在这种情况下,以下代码应该可以工作。
以下代码将文件读入内存并将其存储在缓冲区中。
该文件现在位于变量“buffer”中,可以传递给任何需要您向其提供文件的 char* 缓冲区的函数。
Don't quite get what you are saying; your question is not clear. I'm guessing you are wanting to load a file into memory so that you can pass it to the document parse function. In that case, the following code should work.
The following code reads a file into memory and stores it in a buffer
The file is now in the variable "buffer" and can be passed to whatever function required you to provide a char* buffer of the file to it.
我不熟悉 TinyXML,但从文档看来,通过使用运算符 << 到 C++ 流(因此您可以使用 C++ 字符串流)或 TiXMLPrinter 类 您无需使用文件即可获取 STL 字符串。 请参阅 TinyXML 文档(查找“打印”部分)
I'm not familiar with TinyXML, but from the documentation it seems that by using operator << to a C++ stream (so you can use C++ string streams) or a TiXMLPrinter class you can get an STL string without using a file. See TinyXML documentation (look for the "Printing" section)
TinyXml 中的一个简单而优雅的解决方案,用于将 TiXmlDocument 打印到 std::string。
我做了这个小例子
A simple and elegant solution in TinyXml for printing a TiXmlDocument to a std::string.
I have made this little example
这是我正在使用的一些示例代码,改编自 TiXMLPrinter 文档:
Here's some sample code I am using, adapted from the TiXMLPrinter documentation: