+
+ // Process the TZOFFSETTO value.
+
+ if (timezoneDaylightCollection[timezoneDaylightSeek].timeZoneOffsetToData.size() > 0){
+
+ if (timezoneDaylightCollection[timezoneDaylightSeek].timeZoneOffsetToTokens.size() > 0){
+
+ dataLine += "TZOFFSETTO;";
+ dataLine += timezoneDaylightCollection[timezoneDaylightSeek].timeZoneOffsetToTokens;
+
+ } else {
+
+ dataLine += "TZOFFSETTO";
+
+ }
+
+ dataLine += ":";
+ dataLine += timezoneDaylightCollection[timezoneDaylightSeek].timeZoneOffsetToData;
+ dataLine += "\n";
+
+ dataLineProcessed = OutputText(&dataLine);
+
+ *saveData += dataLineProcessed;
+
+ dataLine.clear();
+ dataLineProcessed.clear();
+
+ }
+
+ // Process the RRULE value.
+
+ if (timezoneDaylightCollection[timezoneDaylightSeek].recurranceRuleData.size() > 0){
+
+ if (timezoneDaylightCollection[timezoneDaylightSeek].recurranceRuleDataTokens.size() > 0){
+
+ dataLine += "RRULE;";
+ dataLine += timezoneDaylightCollection[timezoneDaylightSeek].recurranceRuleDataTokens;
+
+ } else {
+
+ dataLine += "RRULE";
+
+ }
+
+ dataLine += ":";
+ dataLine += timezoneDaylightCollection[timezoneDaylightSeek].recurranceRuleData;
+ dataLine += "\n";
+
+ dataLineProcessed = OutputText(&dataLine);
+
+ *saveData += dataLineProcessed;
+
+ dataLine.clear();
+ dataLineProcessed.clear();
+
+ }
+
+ // Process the COMMENT value.
+
+ if (timezoneDaylightCollection[timezoneDaylightSeek].commentList.size() > 0){
+
+ for (int commentListSeek = 0; commentListSeek < timezoneDaylightCollection[timezoneDaylightSeek].commentList.size();
+ commentListSeek++){
+
+ dataLine += "COMMENT";
+
+ if (timezoneDaylightCollection[timezoneDaylightSeek].commentListAltRep[commentListSeek].size() > 0){
+
+ dataLine += ";ALTREP=\"";
+ dataLine += timezoneDaylightCollection[timezoneDaylightSeek].commentListAltRep[commentListSeek];
+ dataLine += "\"";
+
+ }
+
+ if (timezoneDaylightCollection[timezoneDaylightSeek].commentListLanguage[commentListSeek].size() > 0){
+
+ dataLine += ";LANGUAGE=";
+ dataLine += timezoneDaylightCollection[timezoneDaylightSeek].commentListLanguage[commentListSeek];
+
+ }
+
+ if (timezoneDaylightCollection[timezoneDaylightSeek].commentListTokens[commentListSeek].size() > 0){
+
+ dataLine += ";";
+ dataLine += timezoneDaylightCollection[timezoneDaylightSeek].commentListTokens[commentListSeek];
+
+ }
+
+ dataLine += ":";
+ dataLine += timezoneDaylightCollection[timezoneDaylightSeek].commentList[commentListSeek];
+ dataLine += "\n";
+
+ dataLineProcessed = OutputText(&dataLine);
+
+ *saveData += dataLineProcessed;
+
+ dataLine.clear();
+ dataLineProcessed.clear();
+
+ }
+
+ }
+
+ // Process the RDATE value.
+
+ if (timezoneDaylightCollection[timezoneDaylightSeek].recurranceDateData.size() > 0){
+
+ for (int recurranceDataSeek = 0; recurranceDataSeek < timezoneDaylightCollection[timezoneDaylightSeek].recurranceDateData.size();
+ recurranceDataSeek++){
+
+ dataLine += "RDATE";
+
+ if (timezoneDaylightCollection[timezoneDaylightSeek].recurranceDateDataValue[recurranceDataSeek].size() > 0){
+
+ dataLine += ";VALUE=";
+ dataLine += timezoneDaylightCollection[timezoneDaylightSeek].recurranceDateDataValue[recurranceDataSeek];
+
+ }
+
+ if (timezoneDaylightCollection[timezoneDaylightSeek].recurranceDateDataTimeZoneParam[recurranceDataSeek].size() > 0){
+
+ dataLine += ";TZID=";
+ dataLine += timezoneDaylightCollection[timezoneDaylightSeek].recurranceDateDataTimeZoneParam[recurranceDataSeek];
+
+ }
+
+ if (timezoneDaylightCollection[timezoneDaylightSeek].recurranceDateDataTokens[recurranceDataSeek].size() > 0){
+
+ dataLine += ";";
+ dataLine += timezoneDaylightCollection[timezoneDaylightSeek].recurranceDateDataTokens[recurranceDataSeek];
+
+ }
+
+ dataLine += ":";
+ dataLine += timezoneDaylightCollection[timezoneDaylightSeek].recurranceDateData[recurranceDataSeek];
+ dataLine += "\n";
+
+ dataLineProcessed = OutputText(&dataLine);
+
+ *saveData += dataLineProcessed;
+
+ dataLine.clear();
+ dataLineProcessed.clear();
+
+ }
+
+ }
+
+ // Process the TZNAME value.
+
+ if (timezoneDaylightCollection[timezoneDaylightSeek].timeZoneNameData.size() > 0){
+
+ for (int timezoneNameSeek = 0; timezoneNameSeek < timezoneDaylightCollection[timezoneDaylightSeek].timeZoneNameData.size();
+ timezoneNameSeek++){
+
+ dataLine += "TZNAME";
+
+ if (timezoneDaylightCollection[timezoneDaylightSeek].timeZoneNameLanguage[timezoneNameSeek].size() > 0){
+
+ dataLine += ";LANGUAGE=";
+ dataLine += timezoneDaylightCollection[timezoneDaylightSeek].timeZoneNameLanguage[timezoneNameSeek];
+
+ }
+
+ if (timezoneDaylightCollection[timezoneDaylightSeek].timeZoneNameTokens[timezoneNameSeek].size() > 0){
+
+ dataLine += ";";
+ dataLine += timezoneDaylightCollection[timezoneDaylightSeek].timeZoneNameTokens[timezoneNameSeek];
+
+ }