How to write datetime(char array 1058*19), latitude(1*1058 double) and longitude (1*1058 double) in txt file using fprintf ???

1 view (last 30 days)
I have written the following code but I didn't get datetime in text file.
datetime = {'2018-05-16 07:57:12','2018-05-16 07:57:13'......} (char array 1058*19),
latitude = [23.0347 23.0351 23.0353.....] (1*1058 double),
longitude = [72.5399 72.5398 7253.93 ....] (1*1058 double)
for y = 1:1:1058
AB(y,1) = datetime(y);
AB(y,2) = Lat(y);
AB(y,3) = Lon(y);
end
v = fopen('filename.txt','w');
fprintf(v,'\t%s\t\t%s\t\t%s\n','datetime','Lat','Lon');
%fprintf(v,'%s, %f, %f ',AB);
formatSpec = '%20s \t %2.2f \t %2.2f\n';
[nrows,ncols] = size(AB);
for row = 1:nrows
fprintf(v,formatSpec,AB(row,:));
end
  4 Comments
Stephen23
Stephen23 on 25 May 2018
@vishnu dhaker: the data really is in a char array, so your example should be:
['2018-05-16 07:57:12';'2018-05-16 07:57:13';...]
You can use the cellstr code I gave in my answer.

Sign in to comment.

Accepted Answer

Stephen23
Stephen23 on 25 May 2018
Edited: Stephen23 on 25 May 2018
Assuming that the date-time char vectors are in a cell array:
>> fmt = '%20s \t %2.2f \t %2.2f\n';
>> DT = {'2018-05-16 07:57:12','2018-05-16 07:57:13','2018-05-16 07:57:14'};
>> LA = [23.0347 23.0351 23.0353];
>> LO = [72.5399 72.5398 7253.93];
>> C = DT;
>> C(2,:) = num2cell(LA);
>> C(3,:) = num2cell(LO);
>> fprintf(fmt,C{:})
2018-05-16 07:57:12 23.03 72.54
2018-05-16 07:57:13 23.04 72.54
2018-05-16 07:57:14 23.04 7253.93
Note that a loop is not required. If you really do have a char array with size 1058x19 then use this:
C = cellstr(DT).';
  3 Comments
Stephen23
Stephen23 on 25 May 2018
Edited: Stephen23 on 25 May 2018
@vishnu dhaker: the data you uploaded is a column vector (1058x1 cell). The code that I gave you in my answer converts your char array to a row vector (1x1058 cell), so clearly you did not transpose the cell vector using the code given in my answer. My answer requires that all of the data are in row vectors (exactly like your example data).

Sign in to comment.

More Answers (0)

Categories

Find more on Data Type Conversion in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!