#android
#Android
Вопрос:
try {
System.out.println("check response" response);
JSONObject jsonobject = new JSONObject(response);
JSONObject jobojectsecond = jsonobject.getJSONObject("Data");
mcdetail = new MsgComments();
mcdetail.setId(jobojectsecond.getString("Id"));
mcdetail.setUsername(jobojectsecond.getString("UserName"));
mcdetail.setUserid(jobojectsecond.getString("UserId"));
mcdetail.setCommenttext(jobojectsecond.getString("CommentText"));
Comment = jobojectsecond.getString("CommentTime");
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm:ssa", Locale.US);
TimeZone timeZone = TimeZone.getTimeZone("US/Eastern");
sdf.setTimeZone(timeZone);
String gmtStrDate = sdf.format(Calendar.getInstance().getTime());
System.out.println("GMT 1" gmtStrDate);
SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd hh:mm:ssa");
TimeZone timeZone1 = TimeZone.getTimeZone("GMT 5:30");
sdf1.setTimeZone(timeZone1);
Date gmtDate = sdf.parse(sdf.format(Calendar.getInstance().getTime()));
String str21 = sdf1.format(gmtDate);
System.out.println("GMT 2" str21);
Я использую этот код для преобразования формата даты в Android, и мы получаем дату с сервера, который преобразует этот код для календаря, который я хочу преобразовать.
Ответ №1:
TimeZone fromTimezone =TimeZone.getTimeZone("US/Eastern");
TimeZone toTimezone=TimeZone.getTimeZone("Asia/Calcutta");
long fromOffset = fromTimezone.getOffset(calendar.getTimeInMillis());//Server date
long toOffset = toTimezone.getOffset(calendar.getTimeInMillis());
long convertedTime = calendar.getTimeInMillis() - (fromOffset - toOffset);
convertDate(convertedTime,"dd/MM/yyyy hh:mm:ss");
//Support function
public static String convertDate(String dateInMilliseconds,String dateFormat) {
return DateFormat.format(dateFormat, Long.parseLong(dateInMilliseconds)).toString();
}