1.matlab中处理路径和文件名,主要用到2个函数。

[pathstr,name,ext,versn]=fileparts('filename');

fileparts函数返回文件路径各部分的信息,在返回的参数中,pathstr表示文件路径,name是主文件名,ext是扩展名(包括前面的点),versn是文件版本。

为了区分操作系统,还可以调用filesep函数返回文件路径的分隔符,windows系统中返回的是“\”,UNIX系统返回的是“/”。

f=fullfile('dir1','dir2',...,'filename');

fullfile函数得到完整的文件路径,前面的参数分别表示文件的路径,最后一个参数表示文件名称,可以用数组组合成一个完整的文件名。例如:filepath=fullfile(pathstr,[name

ext]);

2.打开和关闭文件

低级文件IO操作中,需要用fopen和fclose打开和关闭文件。

[fid,message]=fopen(filename,mode);

filename表示打开文件的名称;

mode表示打开方式,有以下几种:

'r'只读方式。

'w'只写方式,覆盖原来的内容。

'a'增补方式,在文件末尾增加数据。

'r+'读写文件。

'w+'若文件不存在则创建一个新文件,若存在则删除已有内容并进行读写操作。

'a+'读取和增补文件。

默认情况下,matlab选用二进制形式打开文件,在该形式下字符串不会被特殊处理。如果要用文本形式打开,则应在以上mode参数后面添加't'。例如'rt','rt+'等。

返回值中,fid为文件标识,是一个非负整数,matlab根据fid值来标识所有已打开的文件,然后才能对文件进行各种操作。如果得到fid值是-1,表示打开失败。

举例说明,[fid,message]=fopen('fget1.m','r+');用读写方式打开文件,若matlab设置的文件路径中没有该文件,会返回错误信息。当用只写方式'w'时则不会出现错误信息,因为如果没有搜索到该文件,系统会自动创建一个空白文件。

status=fclose(fid); %关闭标识为fid的文件

status=fclose('all');%关闭所有已打开文件

如果status=0表示关闭成功,否则status=-1。

这里要注意一点,如果要删除一个已打开的文件,也必须要先关闭它,不能直接用delete函数删除,否则系统会提示用户删除命令被拒绝。

3.处理二进制文件

常见的二进制文件有.m和.bat等,用fread和fwrite函数读取和写入二进制文件。例如,

[fid,message]=fopen('plot.m','r+');

data=fread(fid);

得到的data是一个数值数组,也就是说虽然打开的文件是代码文件,但是用fread读取到的却是数值。若要显示成字符,需添加下面一行代码。

disp(char(data'));

matlab中怎么获取文件路径,matlab获取文件路径和读写二进制文件相关推荐

  1. MATLAB中无法读取图像或无法打开文件等类似问题

    MATLAB中无法读取图像或无法打开文件等类似问题     在MATLAB中进行图像处理算法的仿真是十分方便的,读取图像自然是常规的第一步,那么很多时候会遇到无法读取图像的错误,如果MATLAB报错为 ...

  2. m 文件 dll matlab 中调用_如何在matlab中调用python程序

    现在python很火,很多代码都是python写的,如果你和我一样,习惯了使用matlab,还想在matlab中调用Python的代码,应该怎么办呢?其中一条思路:首先在matlab中调用系统脚本命令 ...

  3. 在MATLAB中使用数学符号,在matlab中怎么输入特殊符号 function在MATLAB中怎么用

    导航:网站首页 > 在matlab中怎么输入特殊符号 function在MATLAB中怎么用 在matlab中怎么输入特殊符号 function在MATLAB中怎么用 相关问题: 匿名网友: 一 ...

  4. matlab中的timer模块,[转载]Matlab中Timer的使用

    Matlab中Timer的使用 鉴于Matlab中缺乏多线程机制,使用Timer无疑是一个很重要的工具,Matlab中Timer是一个Java对象. (1)Timer 的定义 t=timer(); 设 ...

  5. matlab 如何axis,在matlab中axis是什么意思,matlab中axis的用法

    在matlab中axis是什么意思轴在matlab中是什么意思,matlab中的Axis是指在绘图中通常使用axis函数来设置坐标值的范围,在matlab的命令窗口中输入doc轴或help轴即可获得该 ...

  6. matlab中不能找到ccs,搭建matlab连接ccs生成28335代码的环境(路径不在C盘)

    ps:一周每天下班熬到一两点就整这个了.所谓笨鸟先飞,写个博客一起起飞,其中不足之处还请指正. 首先装文件目录: ccs5.5版本(CCS5.5.0.00077_win32) 安装在ccs目录下的: ...

  7. MATLAB中的一些小技巧 - [MATLAB]

    http://liuxqsmile.blogbus.com/logs/17451138.html MATLAB中的一些小技巧 1. Ctrl+C 中断正在执行的操作 如果程序不小心进入死循环,或者计算 ...

  8. matlab中图像映射实例,[转载]Matlab实现多种图像配准(转)

    本文讲述如何利用Matlab Image Processing Toolbox中的图像配准工具实现线性正投影.仿射.投影.多项式.分段线性.局部加权平均配准的过程. 实验平台 X86 PC,Windo ...

  9. matlab中codegen是什么,从 MATLAB 代码生成 C/C++ 代码。 - MATLAB codegen - MathWorks 中国...

    -c生成 C/C++ 代码,但不调用 make 命令. -config:dll使用默认配置参数生成动态 C/C++ 库. -config:exe使用默认配置参数生成静态 C/C++ 可执行文件. -c ...

  10. matlab中如何用数组绘图,matlab 基础学习(1)——数组,矩阵操作和绘图基础学习...

    一维数组(创建,赋值,取值,分割取值,四则运算等操作) 创建一维数组 >> A=[] %创建空的数组 >> B=[1 2 3 4 5] %两种创建行向量,数组的方式 >& ...

最新文章

  1. EBS fnd_global.apps_initialize
  2. hdu 2065DP
  3. IE8 的兼容性问题总结
  4. DX使用随记--ImageComboBoxEdit
  5. C++ Primer 5th笔记(chap 17 标准库特殊设施)多字节低层IO操作
  6. zz STL 优先队列
  7. 博图注册表删除方法_技成周报40期 | 三菱、西门子软件安装常见出错解决方法...
  8. 1.0Nvm环境配置
  9. 阿里云移动测试平台MQC移动测试沙龙第3期【北京站】
  10. Kafka集群部署搭建完美标准版
  11. 修改代理_IP代理修改上网IP地址的作用
  12. python 多层for循环转递归/迭代
  13. 视频解码芯片SAA7111A的初始化
  14. react-navigation createBottomTabNavigator 刷新问题
  15. 未在本地计算机上注册“OraOLEDB.Oracle”提供程序
  16. IP数据包和ICMP数据包的结构
  17. 小米4C官方/第三方ROM下载
  18. python简单操作excel
  19. 100以内加减法练习题,打印到A4纸
  20. UFLDL学习笔记3(Softmax Regression)

热门文章

  1. traefik 2.x WRR带权重的轮训实验
  2. jdbc配置文件密码加密
  3. 媒体类型mediaType
  4. python 解小学数学题_python 解数学题!求帮助
  5. 日语助词が的语法汇总
  6. es --- Unexpected character (‘q‘ (code 113)): was expecting double-quote to start field name\n
  7. iptables之SNAT与DNAT
  8. 面试总结 —— 高级JAVA工程师
  9. 通过自定义注解,AOP,反射,Group分组编写适用于各层级通用性手动调用validate方法
  10. LeNet识别自己的手写数字