2014-07-10 5 views
2

안녕하세요, 저는 Flash air wifi sdcard 응용 프로그램에서 작업하고 있습니다.이 응용 프로그램은 최신 수정 된 파일을 원합니다. 10 진수 날짜 및 10 진수 시간 값이 있습니다.10 진수를 Java에서 날짜와 시간으로 변환하는 방법은 무엇입니까?

이 참조 :

/DCIM,0126_1.jpg,70408,32,17642,2804017071입니다 <date>28040<time>입니다 다음은이 포르 <directory>, <filename>, <size>, <attribute>, <date>, <time>

를 참조하십시오.

사례 1 :

String datastring="1.76.42"; 
SimpleDateFormat sf = new SimpleDateFormat("HH.mm.ss"); 
Date converttoData = sf.parse(datastring); 

outPut : Thu Jan 01 02:16:42 GMT+05:30 1970 

사례 2 :

Date date = new Date(17642); 
    outPut : Thu Jan 01 05:30:17 GMT+05:30 1970 

나는이 코드를 시도 날짜에 17642 진수 값을 변환하는 전체 문서 here

참조

케이스가 하나 인 경우 02:16:42 케이스가 달라지고 다른 시간이 다가오고 있습니다. 05:30:17 동일합니다.

그러나이 파일을 Thu July 10 201419:08:20에 생성했습니다.

그래서이 십진수를 정확한 날짜와 시간으로 변환 할 수 있습니다.

+0

링크 된 문서에 따르면 [비트 조작] (http://docs.oracle.com/javase)이 필요합니다. /tutorial/java/nutsandbolts/op3.html)를 사용하여 날짜와 시간을 가져옵니다. – GriffeyDog

답변

0

빠른 Google은 날짜 형식을 YYYYMMDD로 변환하여 다음 구문을 분석 할 수있는 다음 솔루션을 제공했습니다. 이 기능과 스펙을 사용하면 시간 기능도 사용할 수 있습니다.

public String getDate(Integer date, String sep) { 
    return String.format("%04d", ((date >> 9) & 0x1FF)+1980)+sep+ 
     String.format("%02d", (date >> 5) & 0xF)+sep+ 
     String.format("%02d", date & 0x1F); 
} 
1

이 시도 :

String dateStr = "17642"; 
String timeStr = "28040"; 

int dateInt = Integer.parseInt(dateStr); 
int timeInt = Integer.parseInt(timeStr); 

GregorianCalendar gc = new GregorianCalendar(1980 + ((dateInt >> 9) & 0x1FF), 
     ((dateInt >> 5) & 0xF) - 1, 
     dateInt & 0x1F, 
     ((timeInt >> 11) & 0x1F), 
     ((timeInt >> 5) & 0x3F), 
     (timeInt & 0x1F)/2); 

System.out.println("Message: " + gc.getTime()); 

결과 :

메시지 : 목 7월 10일 중부 유럽 표준시 13시 44분 4초 당신이 말한대로 날짜는 2014

. 그럴 시간은 없지만 정확하다고 확신합니다 :

28040 -> 0110110110001000 -> 
    hr: 01101 == 13 
    min: 101100 == 44 
    sec/2: 01000 == 8 

=> time 13:44:4.5 
+0

또 다른 참조 https://android.googlesource.com/platform/tools/external/fat32lib/+/8053088ccd55a94d6643a12660e967a5e8dfd5de/src/main/java/de/waldheinz/fs/fat/DosUtils.java – Qamar

관련 문제