Matlab 从给出错误日期的csv文件中读取日期

Matlab 从给出错误日期的csv文件中读取日期,matlab,csv,date,Matlab,Csv,Date,我有一个csv文件,其中有一列日期,格式为dd/mm/yyyy HH:mm。第一个条目是“28/06/2017 17:10”。出于某种原因,Excel将此显示为2017年6月28日下午5:10:00。我想在matlab中阅读本专栏,并以dd-mmmm-yyy-HH:MM:SS格式输出它。我在每一列中都有一个奇怪的ouptut日期,第一个条目是:“12-August-0033 17:10:00”,但时间很好 日期从我的csv文件第2列第2行开始 [num,txt,raw] = xlsread('w

我有一个csv文件,其中有一列日期,格式为dd/mm/yyyy HH:mm。第一个条目是“28/06/2017 17:10”。出于某种原因,Excel将此显示为2017年6月28日下午5:10:00。我想在matlab中阅读本专栏,并以dd-mmmm-yyy-HH:MM:SS格式输出它。我在每一列中都有一个奇怪的ouptut日期,第一个条目是:“12-August-0033 17:10:00”,但时间很好

日期从我的csv文件第2列第2行开始

[num,txt,raw] = xlsread('winter_cruise_2017_10min_avg.csv');
formatIn = 'dd/mm/yyyy HH:MM';
A = datestr(raw(2:end,2),formatIn);
formatOut = 'dd-mmmm-yyyy HH:MM:SS';
B = datestr(A,formatOut);

对于2017年冬季巡航10分钟平均csv,包含:

28/06/2017 17:10,
您可以使用来正确解释它:

%% Load data
[num,txt,raw] = xlsread('winter_cruise_2017_10min_avg.csv');

%% Interpret text:
formatIn = 'dd/MM/yyyy HH:mm:ss'; % Corrected!
A = datetime(raw, 'InputFormat', formatIn);
%{
A = 
  datetime
   28-Jun-2017 17:10:00
%}

%% Reformat datetime
formatOut = 'dd-mmmm-yyyy HH:MM:SS';
B = datestr(A,formatOut);
%{
B =
    '28-June-2017 17:10:00'
%}

对于2017年冬季巡航10分钟平均csv,包含:

28/06/2017 17:10,
您可以使用来正确解释它:

%% Load data
[num,txt,raw] = xlsread('winter_cruise_2017_10min_avg.csv');

%% Interpret text:
formatIn = 'dd/MM/yyyy HH:mm:ss'; % Corrected!
A = datetime(raw, 'InputFormat', formatIn);
%{
A = 
  datetime
   28-Jun-2017 17:10:00
%}

%% Reformat datetime
formatOut = 'dd-mmmm-yyyy HH:MM:SS';
B = datestr(A,formatOut);
%{
B =
    '28-June-2017 17:10:00'
%}

您可以发布一个示例Excel文件吗?为什么要在非Excel文件上使用
xlsread
?对于
.csv
您有
csvread
dlmread
importdata
以及其他功能。我不知道还有其他功能,但谢谢,这都是一个学习过程。不是每个人都是你认识的专家。你能发布一个Excel文件样本吗?为什么要在非Excel文件上使用
xlsread
?对于
.csv
您有
csvread
dlmread
importdata
以及其他功能。我不知道还有其他功能,但谢谢,这都是一个学习过程。不是每个人都是你认识的专家。好的,非常感谢你。这就是我最终所做的。好的,非常感谢你。这就是我最终所做的。