亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Industrial programming >> MATLAB

MATLAB 数据导入完全指南:importdata 与低级文件 I/O

数据导入即从外部文件加载数据。importdata 是高级函数,支持多种格式,提供 5 种调用形式:

序号语法与说明
1A = importdata(filename) 从文件加载到数组 A
2A = importdata('-pastespecial') 从剪贴板加载
3A = importdata(___, delimiterIn) 指定 ASCII 文件列分隔符
4A = importdata(___, delimiterIn, headerlinesIn) 跳过表头行
5[A, delimiterOut, headerlinesOut] = importdata(___) 返回检测到的分隔符与表头行数

示例 1:加载图像

filename = 'smile.jpg';
A = importdata(filename);
image(A);

示例 2:带表头的文本文件

文件 weeklydata.txt(空格分隔,首行表头)。

filename = 'weeklydata.txt';
delimiterIn = ' '; headerlinesIn = 1;
A = importdata(filename, delimiterIn, headerlinesIn);
for k = 1:7
    disp(A.colheaders{1,k})
    disp(A.data(:,k))
    disp(' ')
end

输出各列表头与数据。

示例 3:从剪贴板导入

A = importdata('-pastespecial')
% 复制 "Mathematics is simple" 到剪贴板后运行
A = 'Mathematics is simple'

低级文件 I/O

提供字节/字符级完全控制,需更多文件细节。核心函数:

函数说明
fclose关闭文件
feof测试文件结束
ferror文件 I/O 错误信息
fgetl读行(去换行符)
fgets读行(保留换行符)
fopen打开文件/获取文件标识符
fprintf写文本文件
fread读二进制文件
frewind文件指针回首
fscanf读文本文件(格式化)
fseek移动文件指针
ftell获取文件指针位置
fwrite写二进制文件

低级导入文本数据

主要函数:fscanf(格式化读)、fgetl/fgets(逐行读)、fread(字节流读)。

实战:读取降雨数据文件

文件 myfile.txt 包含 3 个月份数据,每月 7 行 5 列。步骤:

  1. fopen 获取文件标识符 fid
  2. 用格式说明符描述数据(%s 字符串、%d 整数、%f 浮点、* 跳过)
  3. 循环读取 3 组数据,存入结构体 mydata(字段:time、month、raindata)
  4. fclose 关闭文件
filename = '/data/myfile.txt'; rows=7; cols=5;
fid = fopen(filename);
M = fscanf(fid, '%*s %*s\n%*s %*s %*s %*s\nM=%d\n\n', 1);
for n = 1:M
    mydata(n).time = fscanf(fid, '%s', 1);
    mydata(n).month = fscanf(fid, '%s', 1);
    mydata(n).raindata = fscanf(fid, '%f', [rows, cols])';
end
for n = 1:M
    disp(mydata(n).time), disp(mydata(n).month)
    disp(mydata(n).raindata)
end
fclose(fid);

输出显示各时段、月份及 7×5 雨量矩阵(含 NaN)。

MATLAB

  1. Azure 文件存储详解:安全可扩展云存储入门指南
  2. MATLAB 入门指南:矩阵实验室的核心能力与应用领域全景
  3. MATLAB 变量深度解析:矩阵本质、赋值、多重赋值、查看与清理、长赋值、格式控制、向量创建
  4. MATLAB 常用命令速查:会话管理、系统操作、输入输出、矩阵数组、绘图可视化
  5. MATLAB 数据类型完全指南:15 种基本类型、转换函数与类型判断函数速查表
  6. MATLAB 运算符大全:矩阵/数组算术、关系、逻辑、位运算、集合运算详解
  7. MATLAB 矩阵核心操作:创建、索引引用、子矩阵提取、行列删除、拼接与基本运算
  8. MATLAB 多维数组与特殊数组完全指南
  9. MATLAB 冒号运算符详解:向量创建与高效迭代
  10. MATLAB 数值类型详解:存储、转换与范围查询
  11. MATLAB 字符串完全指南:创建、拼接、元胞数组与常用函数
  12. MATLAB 函数详解:定义、工作区、输入输出与多种函数类型