From Bohemia Interactive Community
- Posted on 1 September 2016
- Dr_Eyeball
- To convert a structured text back to a string type, just use:
_str = str parseText _structuredText;
- Posted on September 1, 2017 - 13:23 (UTC)
- AgentRev
-
If you are parsing user-defined strings like player names, you may want to convert special characters to their XML entities as a precaution beforehand:
private _encodeText =
{
private _specialChars = [38, 60, 62, 34, 39]; // & < > " '
private _convertTo = [[38,97,109,112,59], [38,108,116,59], [38,103,116,59], [38,113,117,111,116,59], [38,97,112,111,115,59]]; // & < > " '
private _chars = [];
private "_i";
{
_i = _specialChars find _x;
if (_i isEqualTo -1) then { _chars pushBack _x } else { _chars append (_convertTo select _i) };
} forEach toArray param [0,"",[""]];
toString _chars
};
private _encodedName = _name call _encodeText;
private _redName = parseText format ["<t color='#ff0000'>%1</t>", _encodedName];