◎위챗 : speedseoul
https://blog.naver.com/guehgk/220693686949
Date date = new Date(time_t type valuse * 1000);
time_t 가 초단위 이므로 1000곱해서 밀리세컨드 단위로 바꿔준다.
time_t 은 long int 이므로 long 으로 typecate 가능하다.
ex)
[C++] time_t timer; timer = time(NULL); long time_toLong = (long) timer; |
[JNI] //jobj 는 jobject 타입의 매개변수 jclass clazz = env->GetObjectClass(jobj); jfieldID fid; long date = time_toLong; fid = env->GetFieldID(clazz, "timevaluse", "J"); env->SetLongField(jobj, fid, date_toLong); |
[java] long date_toLong; Date date = new Date(date_toLong* 1000); // millisec 로 변환 String a = "AM"; // am/pm int hour = date.getHours(); // 시간 int min = date.getMinutes(); // 분 String hour_toString = Integer.toString(hour); String min_toString = Integer.toString(min); if(date.getHours() > 12){ //12시간 기준으로 변환 a = "PM"; hour = date.getHours()-12; } if(hour < 10){ // 한자리일 경우 앞에 0을 붙여줌 hour_toString = "0" + Integer.toString(hour); } if(min < 10){ // 한자리일 경우 앞에 0을 붙여줌 min_toString = "0" + Integer.toString(min); }
String date_toString = Integer.toString(date.getYear()+1900)+"/"+ Integer.toString(date.getMonth()+1)+"/"+Integer.toString(date.getDate())+ " "+ a +" " + hour_toString + ":" + min_toString; // 2016/4/26 AM 11:57 형태로 표기됨 |
참고자료 링크
[출처] [Java] C++ 의 time_t 를 Date 로 변환 |작성자 디엔