year = -year; append(pBuffer, year, 4); pBuffer.append('-'); append(pBuffer, cal.get(Calendar.MONTH) + 1, 2); pBuffer.append('-'); append(pBuffer, cal.get(Calendar.DAY_OF_MONTH), 2); if (parseTime) { pBuffer.append('T'); append(pBuffer, cal.get(Calendar.HOUR_OF_DAY), 2); pBuffer.append(':'); append(pBuffer, cal.get(Calendar.MINUTE), 2); pBuffer.append(':'); append(pBuffer, cal.get(Calendar.SECOND), 2); int millis = cal.get(Calendar.MILLISECOND); if (millis > 0) { pBuffer.append('.'); append(pBuffer, millis, 3); int hours = minutes / 60; minutes -= hours * 60; append(pBuffer, hours, 2); pBuffer.append(':'); append(pBuffer, minutes, 2);