code: public void write(Writer writer) throws IOException {
          BufferedWriter bw = new BufferedWriter(writer);
          if (vtzlines != null) {
              for (String line : vtzlines) {
                  if (line.startsWith(ICAL_TZURL + COLON)) {
                      if (tzurl != null) {
                          bw.write(ICAL_TZURL);
                          bw.write(COLON);
                          bw.write(tzurl);
                          bw.write(NEWLINE);
                      }
                  } else if (line.startsWith(ICAL_LASTMOD + COLON)) {
                      if (lastmod != null) {
                          bw.write(ICAL_LASTMOD);
                          bw.write(COLON);
                          bw.write(getUTCDateTimeString(lastmod.getTime()));
                          bw.write(NEWLINE);
                      }
                  } else {
                      bw.write(line);
                      bw.write(NEWLINE);
                  }
              }
              bw.flush();
          } else {
              String[] customProperties = null;
              if (olsonzid != null && ICU_TZVERSION != null) {
                  customProperties = new String[1];
                  customProperties[0] = ICU_TZINFO_PROP + COLON + olsonzid + "[" + ICU_TZVERSION + "]";
              }
              writeZone(writer, tz, customProperties);
          }
      }
docs: Writes RFC2445 VTIMEZONE data for this time zone
  
  @param writer A <code>Writer</code> used for the output
  @throws IOException If there were problems creating a buffered writer or writing to it.