2013-12-12 2 views
0

서버에서 가져온 타임 스탬프의 ArrayList에서 ListView의 어댑터에 날짜를 설정하려고합니다. 여기 서버 타임 스탬프를 문자열로 잘못 변환했습니다.

Date date = new Date(news_date.get(position) * 1000); 
SimpleDateFormat sdf= new SimpleDateFormat("dd.MM.yy"); 
((TextView) view.findViewById(R.id.newsTvDate)).setText(sdf.format(date)); 

내 로그입니다 :
12-12 19:00:23.234: D/MyLog(13086): news_date.get(position)=1385323200 
12-12 19:00:23.254: D/MyLog(13086): news_date.get(position)=1384718400 
12-12 19:00:23.266: D/MyLog(13086): news_date.get(position)=1384113600 
12-12 19:00:23.275: D/MyLog(13086): news_date.get(position)=1383508800 
12-12 19:00:23.291: D/MyLog(13086): news_date.get(position)=1383076800 
12-12 19:00:55.426: D/MyLog(13086): news_date.get(position)=1382904000 

내가 02.01.70 같은 것을 볼 결과, 26.12.69 등 내가 그것을 어떻게 해결합니까 등

?

+1

'news_date.get (position) * 1000'은 (은)는 무엇으로 평가됩니까? –

+4

정확히 무엇이 문제입니까? 달성하고자하는 것은 무엇입니까? – Sajmon

+0

짐작 :'news_date.get (position)'이 0으로 평가되지 않고'* 1000'을 제거하려고합니다. –

답변

0

정수 오버 플로우 : 잘못하여

내가 0에 가까운 무언가를 의미 .

예를 들어 1385323200 * 1000이 너무 커서 32 비트 정수에 맞지 않습니다. 먼저 피연산자 중 하나를 64 비트 정수로 승격하십시오 (1385323200 * 1000L).

+0

! 고맙습니다. 타임 스탬프는 정수이므로 자바 형식을 위해 곱하면 오버플로가됩니다. – user2976267

-1

당신은 아마 당신의 news_date.get (위치)에서 잘못된 번호를 받고, 찾으려고하는 이유

편집 : P

+0

로그가있는 게시물이 업데이트되었습니다. 정확히 – user2976267

관련 문제