cp readslice.R ts_readslice.R
[wrf-fire-matlab.git] / util1_jan / private / ftopen.m
blob28d30603acb014fffca656ae7c4658bf7bdfd919
1 function fid=ftopen(file)
2 % open fortran unformatted file with proper endian
3 endian(1).par='native';
4 endian(2).par='ieee-le';
5 endian(3).par='ieee-be';
6 endian(4).par='ieee-be.l64';
7 endian(5).par='ieee-be.l64';
8 mode=[];
9 for i=1:length(endian);
10         fid=fopen(file,'r',endian(i).par);
11    if fid<0, 
12       fprintf('cannot open file %s\n',file),
13       return
14    end
15    j=fread(fid,1,'int');
16    % fprintf('first word in %s mode is %i\n',endian(i).par,j)
17    fclose(fid);
18    if abs(j)<2^15,
19       mode=endian(i).par;
20       break, 
21    end
22 end
23 if length(mode)==0, 
24    fprintf(1,'cannot find mode to open file %s\n',file),
25    fid=-1;
26    return
27 end
28 fid=fopen(file,'r',mode);
29 fprintf('FORTRAN file %s mode %s\n',file,mode);
30 return