Skip to content

Commit

Permalink
utc time handling
Browse files Browse the repository at this point in the history
  • Loading branch information
jirkacigler committed Oct 27, 2011
1 parent f08b3c6 commit b75e665
Show file tree
Hide file tree
Showing 3 changed files with 18 additions and 4 deletions.
14 changes: 11 additions & 3 deletions DateTime.m
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,15 @@
methods
function this = DateTime(varargin)
if numel(varargin)==1 && isa(varargin{1},'java.util.Date')
this.serialDate=-java.util.Date().getTimezoneOffset()/(60*24)+datenum(char(varargin{1}.toGMTString));
df = java.text.SimpleDateFormat( 'yyyy-MM-dd HH:mm:ss' );
tz = java.util.TimeZone.getTimeZone ('UTC');
df.setTimeZone( tz );
this.serialDate=datenum(char(df.format(varargin{1})));
%this.serialDate = datenum(char(varargin{1}.toString)) - varargin{1}.getTimezoneOffset/60/24;
%disp ( [ char(varargin{1}.toGMTString), '---' char(varargin{1}.toString ), '---', char(varargin{1}.toLocaleString )]);
%if (varargin{1}.getTimezoneOffset)~=-120
% disp(1);
%end
else
this.serialDate=datenum(varargin{:});
end
Expand Down Expand Up @@ -215,8 +223,8 @@ function disp(this)
function this = min(this,varargin)
this.serialDate = min(this.serialDate,varargin{:});
end
function out = datestr(this)
out = datestr(this.serialDate);
function out = datestr(this,varargin)
out = datestr(this.serialDate,varargin{:});
end


Expand Down
2 changes: 2 additions & 0 deletions WriteYaml.m
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,8 @@ function WriteYaml(filename, data)
%
%
function result = scan_datetime(r)
% datestr 30..in ISO8601 format
%java.text.SimpleDateFormat('yyyymmdd'T'HH:mm:ssz" );
result = java.util.Date(datestr(r));
end

Expand Down
6 changes: 5 additions & 1 deletion extras/TimeVals2Cell.m
Original file line number Diff line number Diff line change
@@ -1,7 +1,11 @@
function s = TimeVals2Cell(time,datavalues,header)
% creates a typical struct with field named by header. Values are cell of
% date and vals.

% synopsis:
% s = TimeVals2Cell(time,datavalues,header)
if ~iscell(header)
header = {header};
end

for i=1:numel(header)
s.(header{i}) = [num2cell(DateTime(time)) num2cell(datavalues(:,i))];
Expand Down

0 comments on commit b75e665

Please sign in to comment.