Ho bisogno di formattare la data in una stringa specifica.Formato Android con fuso orario
ho usato SimpleDateFormat
classe per formattare la data utilizzando il modello "yyyy-MM-dd'T'HH:mm:ssZ
" che restituisce la data corrente come
"2013-01-04T15:51:45+0530
" ma ho bisogno come
"2013-01-04T15:51:45+05:30
".
Di seguito si riporta la codifica utilizzata,
Calendar c = Calendar.getInstance();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssZ", Locale.ENGLISH);
Log.e(C.TAG, "formatted string: "+sdf.format(c.getTime()));
uscita: stringa formattata: 2013-01-04T15:51:45+0530
ho bisogno del formato 2013-01-04T15:51:45+05:30
semplicemente aggiungendo i due punti tra ora GMT.
Poiché sto lavorando al calendario di Google per inserire un evento, accetta solo il formato richiesto che ho menzionato.
Non penso che sia possibile con un semplice formato. Quindi dovrai inserire ':' manualmente. [Java 7 ha introdotto il marcatore 'X'] (http://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html) che ha più opzioni di formattazione di 'Z' ma non è disponibile su Android (ancora?). – assylias
Se la formattazione manuale è il compito da svolgere (in riferimento al commento precedente), è possibile cercare l'ultimo '+' e quindi aggiungere un ':' dopo 2 indici. –
@KazekageGaara Potrebbe anche essere un '-' ... – assylias