Berawal dari tugas akhir saya, saya mengalami kasus dengan format tanggal JSON dari server RESTful web service yang mengeluarkan output seperti ini
/Date(1313341200000+0700)/
Saya harus mengubah format tanggal yang aneh*) tersebut ke format yang human readable
*)menurut yang saya baca format tersebut manyatakan waktu dalam jumlah detik yang dihitung sejak tanggal 1 Januari 2011 hingga waktu yang dimaksudkan, sedangkan +0700 menyatakan regional waktu yang berselisih 7 jam dari GMT
Untuk memprosesnya, saya harus mendapatkan nilai 1313341200000 dari output tersebut
Codingannya dapat diilakukan dengan menangkap output tersebut sebagai sebuah String kemudian dipisahkan dengan method Split
Beginilah code nya
String epochDate = "/Date(1313341200000+0700)/"; System.out.println(epochDate); Pattern pat = Pattern.compile("[(+]"); String str[] = pat.split(epochDate); for(int i=0;i<str.length;i++) { System.out.println(str[i]); }Penjelasan :
Pattern pat = Pattern.compile("[(+]");Di sini saya mendeklarasikan karakter yang dijadikan patokan untuk memecah String yaitu ( dan + dari output
/Date(1313341200000+0700)/yang mengapit
1313341200000Kemudian tangkap hasilnya sebagai array of String
String str[] = pat.split(epochDate);Output yang saya inginkan berada pada indeks 1
str[1]
Demikian, semoga bermanfaat
0 comments:
Post a Comment