Computer says no!
Download XmlPac.library
Simple and straightforward XML parsing and composing library.
Usage example:
VAR
XML : FB_XMLControl;
Buffer: STRING(GVL_Param_XmlControl.udiMaxFileSize);
// or
Buffer: ARRAY [0..GVL_Param_XmlControl.udiMaxFileSize] OF BYTE;
END_VAR
XML.pBuffer: = ADR (buffer);
XML.LenBuffer: = SIZEOF (buffer);
Add your own preferred fileheader like:
XML.WriteDocumentHeader( '<?xml version="1.0" encoding="UTF-8"?>');
<MyTag ParaName = "11" />
XML.newTag(sTagName: = 'MyTag');
XML.newParameter(Name: = 'ParaName', Parameter: = 11);
XML.CloseTag();
<MyTag> MyText </ MyTag>
XML.newTag(Name := 'MyTag');
XML.newTagData(TagData :='MyText');
XML.CloseTag();
XML.toStartBuffer();
XML.newComment(sTagName: = 'MyComment');
XML.NextTag();
XML.NextParameter(Parameter: = LastValue);
Feedback: Parameter returns the value found (string)
FB_FileControl;
This function block can open, close, read and save from and to a generic plc memory buffer
Note: Files do not neccesarily need to be in a .xml format ;-)
FB_StringBuffer;
This functionblock acts as an IO stream buffer for use with FB_XmlControl
FB_XmlControl:
Organizes parsing and composing of XML data. Data can be treated as STRING or char array.
Filebuffersize is default 32 kilobytes and can be set via a library parameter (Gvl_Param_XmlControl)
Download XmlPac.library