次のコードは、MATLABコンテナマップのキーとしてMatlabsシリアル日付番号を使用しています。キータイプはdoubleです。これは正しいです?Matlabsのシリアル日付番号をキーとして使用できますか?
currDateTime='2013-02-12 11:00';
dateNum=datenum(currDateTime);
keySet = {dateNum};
currentDateNum=datestr(dateNum);
valueSet = {currentDateNum} ;
weatherFrontMap = containers.Map(keySet,valueSet);
weatherFrontMap(dateNum)='eleven';
currDateTime='2013-02-12 12:00';
dateNum=datenum(currDateTime);
weatherFrontMap(dateNum)='twelve';
currDateTime='2013-02-12 13:00';
dateNum=datenum(currDateTime);
weatherFrontMap(dateNum)='thirteen';
currentDateNum=datestr(dateNum);
disp (currentDateNum)
str=weatherFrontMap(dateNum);
disp(str)
subtractHour=addtodate(dateNum,-1,'hour');
currentDateNum=datestr(subtractHour);
disp (currentDateNum)
strSubtractHour=weatherFrontMap(subtractHour);
disp(strSubtractHour)
subtractHour2=addtodate(dateNum,-2,'hour');
currentDateNum=datestr(subtractHour2);
disp (currentDateNum)
strSubtractHour2=weatherFrontMap(subtractHour2);
disp(strSubtractHour2)
これは印刷します:
2013年2月12日13:00:00
13
2013年2月12日12:00:00
12
2013年2月12日11:00:00
container.Map/subsrefの使用中にエラーが発生しました
指定されたキーはこのコンテナーに存在しません。
testMapのエラー(40行目)
strSubtractHour2 = weatherFrontMap(subtractHour2);