다음 코드를 사용하여 날짜를 인코딩하려고했습니다.DateFormat 및 Base64
String[] anArray = {"Value1","Value2" DateFormat.getDateTimeInstance.format(new Date())};
StringBuilder strBulder = new StringBuilder("tracker=");
strBuilder.append(new String(Base64.encode(anArray[0].getBytes())))
.append("¶m1=")
.append(new String(Base64.encode(anArray[1].getBytes())))
.append("×tamp=")
.append(new String(Base64.encode(anArray[2].getBytes()))).toString();
인코딩 된 타임 스탬프는 항상 동일하게 유지해야하는 문제입니다.
당신은이 anArray [2] 다음 – andy
를 내 테스트 결과 인쇄 할 수 있습니다, 이러한 월 (18) 만 2 문자의 차이 사이에 두 결과 입니다 2014 오후 3시 39분 11초 추적기 = VmFsdWUx & PARAM1 = VmFsdWUy 및 타임 스탬프 = TWF5IDE4LCAyMDE0IDM6Mzk6MTEgUE0 = 월주의 18, 2014 3:39:25 PM 추적기 = VmFsdWUx & param1 = VmFsdWUy & timestamp = TWF5IDE4LCAyMDE0IDM6Mzk6MjUgUE0 = – andy
출력은 다음과 같습니다. anArray [2] = "5/18/14 2:27 AM"AND anArray [2] .getBytes() = [53, 47, 49, 56, 47, 49, 52, 32, 50, 58, 50, 55, 32, 65, 77] ... 내 경우 타임 스탬프가 같아진다. – VirtualLogic