2017-03-10 169 views
1

JSONから抽出した日付をミリ秒(1488520800000)に変換し、変数に書式設定された日付(2017-03-02)に変換するようです。ここに私のコードだ:ミリ秒のjmeter変数をフォーマットされた日付に変換する

import java.text.*; 
import java.util.*; 

SimpleDateFormat source = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS"); 
SimpleDateFormat target = new SimpleDateFormat("yyyy-MM-dd"); 
Date date = source.parse(vars.get("varReviewDatevalue")); 
String newDate = target.format(date); 
vars.put("varFormattedReviewdateValue",newDate); 

ここに私が取得エラーです:3月2日、2017年、私はできません:奇妙な何

ERROR - jmeter.util.BeanShellInterpreter: Error invoking bsh method: eval  Sourced file: inline evaluation of: ``import java.text.*; import java.util.*; log.info("value for variable: 14885208 . . . '' : Typed variable declaration : Method Invocation source.parse 

は、私のような抽出された日付を正常に動作するようなコードを得たことですミルで表現された日付が日付に変換されていない理由を理解する。何か案は?

+0

の可能性のある重複した[ジャワの日付ににcurrentTimeMillisを変換するには?](のhttp://のstackoverflow。 com/questions/8237193/how-to-convert-currenttimemillis-to-a-date-in-java) –

答えて

1

誤ったjmeter要素を使用していました。この投稿は、たくさん私を助け:JMeter: Converting extracted time stamp value to date format

私はJSR223サンプラーにこのコードを入れて、すべてが

を働いた
import java.text.*; 
long timeStamp = Long.parseLong(vars.get("varReviewDatevalue")); 
Date date = new Date(timeStamp); 
DateFormat formatter = new SimpleDateFormat("yyyy-MM-dd"); 

TimeZone tzInAmerica = TimeZone.getTimeZone("America/Denver"); 
formatter.setTimeZone(tzInAmerica); 
String dateFormatted = formatter.format(date); 
vars.put("varFormattedReviewdateValue", dateFormatted); 
log.info(dateFormatted); 
log.info(vars.get("varFormattedReviewdateValue")); 
関連する問題