matlab ASCII 格式导入

可以用fprintf函数,来代替save函数啊
比如现在我有一个变量a=[0.1223 345.4544]
如果我想保存它的话,可以用下面的程序:
fid = fopen('a.txt','wt');
fprintf(fid,'%6.4f %8.4f\n',a);
fclose(fid);
然后打开a.txt,你会发现其中是0.1223 345.4544

如果用save a.txt -ASCII a
保存的话,a.txt中的内容是 1.2234500e-001 3.4545436e+002

大气海洋ASCIIi数据中,通常都含有字符和数字,例如data.txt文件内有如下内容:

staion222
12.0 23 45 45
14.5 89 56 30

这时的数据就不是规则的数字矩阵,用fortran来读写当然不在话下,但是大家最熟悉的matlab的load命令就不可用了。如果这时又懒得用fortran来处理,怎么办呢?
下面是如何用matlab读取以上ascii文件的例子,同时给出了写ascii文件的代码,由此之后举一反三,触类旁通,读写类似的ascii文件我想应该就没问题了。

>>
clear;clc;

%--打开文件
fid = fopen('data.txt');

%-读ascii

%--读取第1个数据(字符型),取6个字符
head = fscanf(fid,'%6s',1);

%--再读取一个实数,因为用'%d',没指定长度,直到遇见空格
h = fscanf(fid,'%d',1);

%--读取8个数据,写成2*4矩阵(浮点数型),读取的数按列写入,所以转置,得原来顺序
data = (fscanf(fid,'%g',[4 2]))'; 
%--关闭通道
fclose(fid)

%--写ascii

fid=fopen('write.dat','w');

fprintf(fid,'%4s%d', head,h);

%--换行
fprintf(fid,'\n');

for i = 1:2
fprintf(fid,'%7.2f', data(i,:)) ;
fprintf(fid,'\n'); 
end

fclose(fid)

转载自http://brent0541.blog.163.com/blog/static/1850932542012101161529799/

 

matlab ASCII 格式导入的更多相关文章

  1. matlab数据的导入和导出,以matlab工作区workspace为source和destination

    MATLAB支持工作区的保存.用户可以将工作区或工作区中的变量以文件的形式保存,以备在需要时再次导入. 保存工作区可以通过菜单进行,也可以通过命令窗口进行. 数据导出 1. 保存整个工作区 选择Fil ...

  2. Cadstar格式导入功能

    Cadstar格式导入功能   Skip to end of metadata   Attachments:4 Added by Wenlong Hua, last edited by Wenlong ...

  3. 设置 matlab 画图格式

    1:设置 matlab 画图格式 clear;clc; % load("array.mat"); % Bestallarray=array; % rllofcircle(Besta ...

  4. DWG/DGN格式导入Arcgis;转化为shp格式;更改地理坐标;导入Google Earth【转】

      其实本来,我就是需要把一个autocad的dwg/dgn格式的东西导入到google earth里面:但是首先我对dwg/dgn格式的东西根本就不熟:其次我拿到的dwg/dgn格式文件是用的HK8 ...

  5. lrc 校验码 ascii 格式

    lrc 校验码  ascii 格式 将adr1 (站号)至最后一个数据内容相加,得到结果以256为单位,超出部分去除(如得到的结果为16#128H则只取28H,) 然后计算二次反补得到后的结果即为侦误 ...

  6. MATLAB 的数据导入与导出

    1 数据导入: %% 高层次读取数据. importdata 函数是一个高层次的函数 filename = 'weeklydata.txt'; delimiterIn =' '; %delimiter ...

  7. matlab各格式数据读取与保存函数

    数据处理及matlab的初学者,可能最一开始接触的就是数据的读取与保存: %matlab数据保存与读入 function datepro clear all; %产生随机数据 mat = rand(, ...

  8. MATLAB中批量导入.mat文件(每个文件多变量)

    一.新建MATLAB script(.m文件):readall_mat.m 二.代码如下: function data = readall_mat(path) % READALL_MAT 读取所有文件 ...

  9. [PL/SQL]使用PL/SQL实现ORACLE的Excel格式导入导出

    注:教程所使用的PL/SQL Developer版本为10版本 1.oracle导出excel格式 第一步,在pl/sql窗口查询出你想要导出的数据. 第二步,选择你想导出的数据,然后右键" ...

随机推荐

  1. 吉日嘎拉DotNet.BusinessV4.2中的一处bug,及我的修复和扩展

    bug所在位置:DotNet.Business\Utilities\BaseManager.GetDataTableByPage.cs的函数 public virtual DataTable GetD ...

  2. Install gocode

    1. D:\AWS_workspace\DAAS_Go>go get -u -ldflags -H=windowsgui github.com/nsf/gocode 2. Then gocode ...

  3. android 6.0 httpclient

    Apache HTTP Client RemovalAndroid 6.0 release removes support for the Apache HTTP client. If your ap ...

  4. 深入.NET框架

    .NET是微软公司在2000年推出的一个战略(平台). 其目的就是想 任何人使用任何终端设备在任何地方都可以访问微软提供的服务. .NET Framework两大组件: CLR(Common Lang ...

  5. 趣味问题:画图(c++实现)

    描述:在一个定义了直角坐标系的纸上,画一个(x1,y1)到(x2,y2)的矩形指将横坐标范围从x1到x2,纵坐标范围从y1到y2之间的区域涂上颜色.下图给出了一个画了两个矩形的例子.第一个矩形是(1, ...

  6. SharePoint 2013 的HTML5特性之响应式布局

    今天偶然看到一本书<Pro SharePoint 2013 Branding and Responsive Web Development>,看到SharePoint 2013基于HTML ...

  7. [Microsoft Dynamics CRM 2016]Invalid Action – The selected action was not valid 错误的诱因及解决方法

    详细问题描述: 由于解决windows server 评估版过期\SQL server 评估版过期的问题后而导致的Invalid Action – The selected action was no ...

  8. FIJ Jobs – 2013/8/12

    Department Vacancies Total Skill Set Experience Language Systems Systems Coordinator 1 Communication ...

  9. 高性能JS笔记2——数据存取

    数据存取性能而言: 字面量>本地变量>数组元素>对象成员 一.标识符解析的性能 标识符解析是有代价的,一个标识符的位置越深,它的读写速度也就越慢. 局部变量的读写速度是最快的,全局变 ...

  10. 实战1--应用EL表达式访问JavaBean的属性

    (1)编写index.jsp页面,用来收集用户的注册信息 <%@ page language="java" pageEncoding="GBK"%> ...