Home » U++ Library support » U++ Core » Xmlize - need help
Xmlize - need help [message #46952] |
Tue, 27 September 2016 17:47 |
 |
deep
Messages: 267 Registered: July 2011 Location: Bangalore
|
Experienced Member |
|
|
Hi,
s = <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE Properties>
<Properties>
<PROPERTY NAME="Company Name" TYPE="string">My Company 1</PROPERTY>
<PROPERTY NAME="Company Name" TYPE="string">My Company 2</PROPERTY>
<PROPERTY NAME="Company Name" TYPE="string">My Company 3</PROPERTY>
<PROPERTY NAME="Company Name" TYPE="string">My Company 4</PROPERTY>
<PROPERTY NAME="Company Name" TYPE="string">My Company 5</PROPERTY>
</Properties>
I want to create XML file like this using Xmlize
Code which I am trying. Need help in Xmlize xml declaration
#include <Core/Core.h>
using namespace Upp;
struct RepProperty : Moveable<RepProperty> {
String propName;
String propValue, propType;
void Xmlize ( XmlIO& xml ) {
xml ( "PROPERTY" , propValue );
xml.Attr ( "NAME", propName ).Attr("TYPE", propType);
}
};
struct test : Moveable<test> {
Vector<RepProperty> repProp;
void Xmlize ( XmlIO& xml ) {
xml ( "PROPERTIES", "PROPERTY", repProp );
}
};
CONSOLE_APP_MAIN {
test t;
for ( int i = 0; i < 5 ; i++ ) {
RepProperty &r = t.repProp.Add();
r.propName = "Company Name" ;
r.propValue = "My Company" ;
r.propType = "string" ;
}
String s = StoreAsXML ( t.repProp , "Properties" );
DUMP ( s );
}
I get following result.
*
s = <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE Properties>
<Properties>
<item NAME="Company Name" TYPE="string">
<PROPERTY>My Company</PROPERTY>
</item>
<item NAME="Company Name" TYPE="string">
<PROPERTY>My Company</PROPERTY>
</item>
<item NAME="Company Name" TYPE="string">
<PROPERTY>My Company</PROPERTY>
</item>
<item NAME="Company Name" TYPE="string">
<PROPERTY>My Company</PROPERTY>
</item>
<item NAME="Company Name" TYPE="string">
<PROPERTY>My Company</PROPERTY>
</item>
</Properties>
Actually for this code to compile I done following change in Core/Xmlize.h
template <class T> XmlIO operator()(const char *tag, T& var);
// template <class T> XmlIO List(const char *tag, const char *itemtag, T& var);
template <class T> XmlIO operator()(const char *tag, const char *itemtag, T& var);
template <class T> XmlIO operator()(const char *tag, T& var, const T& def);
// template <class T> XmlIO List(const char *tag, const char *itemtag, T& var, const T& def);
template <class T> XmlIO operator()(const char *tag, const char *itemtag, T& var, const T& def);
Warm Regards
Deepak
[Updated on: Tue, 27 September 2016 17:50] Report message to a moderator
|
|
|
Goto Forum:
Current Time: Sat Apr 26 17:17:17 CEST 2025
Total time taken to generate the page: 0.00980 seconds
|