Author:Maddock

Date:2015-01-20

读取TXT文件内容到矩阵

img.txt数据读入到R矩阵

R = importdata('img.txt');

矩阵保存到读取TXT文件

f_id=fopen('testimg\debug\test.txt','wt');%在当前目录以写的方式打开或创建txt文件
a=randi(,);%定义要输出的矩阵 这里用了一个随机整数矩阵代表要输出的结果做示例
for i=:
fprintf(f_id,'%d ',a(i,:));%输出 可以整行输出 并统一控制格式
fprintf(f_id,'\n');%换行
end
fclose(f_id);%关闭文件

判断文件是否存在

infilename = [str,'\lena.jpg'];
sgc_exist = exist(infilename, 'file'); % 由变量 sgc_exist 返回文件是否存在,因为是判断文件是否存在,所以第二个参数写'file'
if sgc_exist ~=
disp('lena.jpg is exist');
end

遍历文件中某个后缀的所有文件

dir函数:获得指定文件夹下的所有子文件夹或文件,并存到文件结构数组中.

调用方式:

dir('.')列出当前目录下所有子文件夹和文件

dir('G:\Matlab')列出指定目录下所有子文件夹和文件

dir('*.m')列出当前目录下符合正则表达式的文件夹和文件

比如说在d:\filetxt下有一系列txt文件,文件名符合matlab变量名的命名规则。

    file=dir('d:\filetxt\*.txt');
for n=:length(file)
str = ['d:\filetxt\',file(n).name];
disp(str);
end

打开文件操作

http://www.cnblogs.com/longdouhzt/archive/2013/01/29/2881749.html

1、  Matlab文件操作主要有三个步骤:首先打开文件,然后对文件进行读写操作,最后要关闭文件。

2、  fid=fopen(文件名,打开方式)

'r'

只读,文件必须存在(缺省的打开方式)

'w'

写文件,若文件已存在则原内容将被覆盖;若文件不存在则新建一个

'a'

在文件末尾添加,文件若不存在则新建一个

'r+'

可读可写,文件必须存在

'w+'

可读可写,若文件已存在则原内容将被覆盖;若文件不存在则新建一个

'a+'

可读可写可添加,文件若不存在则新建一个

3、  fid 为文件句柄,其它函数可以用它对该文件进行操作。如果句柄值大于 0,则表示文件打开成功;若打开失败,fid 的返回值为 -1。

fid=fopen('output.txt','wt+');

fprintf(fid,'Hello world!\n');

fclose(fid);

4、  有两个标准代码文件,不需打开就可以直接使用,分别为:fid=1 标准输出文件,fid=2 标准错误文件。

fprintf(1,'Hello world!\n');

fprintf(2,'Hello world!\n');

5、  若不指定打开方式,则表示只读。

6、  文件有两种格式:二进制文件(b)和文本文件(t)。

6、在Windows下,打开文件的默认是二进制格式,如果要以文本方式打开,则必须在打方式中加上字符 't'。

fid=fopen('output.txt','wt+');

7、  其中 fid 为所要关闭的文件的句柄,status 为关闭文件的返回代码,若关闭成功则为 0,否则为 -1。

status=fclose(fid);

8、  文本文件的读取

[A,count]=fscanf(fid,format,size)

A 用来存放读取的数据

count 返回读取数据的个数,为可选项

fid 为文件句柄

size 为可选项,缺省为读取整个文件,

若给出,则取值可以是:

N

读取 N 个数据到一个列向量

Inf

读取整个文件

[m,n]

读取 m ´ n 个数据到一个  m ´ n 矩阵中,按列存放

format 用来控制读取的数据格式,由 % 加上格式符组成,下表中是常见的格式符,在 % 之后可以加上数据宽度,如 %12d

c

字符型

g

浮点数(自动)

d

十进制整数

o

八进制

e

浮点数(科学计数法)

s

字符串

f

浮点数(小数形式)

x

十六进制

9、文本文件的写入

count=fprintf(fid,format,输出变量列表)

  • 将输出变量按指定的格式写入文件中
  • 若省略 fid,则表示在屏幕上输出
  • count 返回所写入的数据元素个数(可省)
  • format 以 % 开头,通常由以下几个部分组成:

l  fprintf 命令的格式说明符

c

字符型

g

浮点数(自动)

d

十进制整数

o

八进制

e

浮点数(科学计数法)

s

字符串

f

浮点数(小数形式)

x/X

十六进制

l  format 中还可以使用的特殊字符

\b

退后一格

\t

水平制表符

\f

换页

\\

反斜杠

\n

换行

''

单引号

\r

回车

%%

百分号

10、读写的定位

  • 打开文件读写数据时,需要判断和控制文件的读写位置,如数据是否读完,或者需要读写指定位置上的数据等。
  • 在读写文件时,Matlab 自动创建一个文件位置指针来管理和维护文件读写数据的起始位置。
  • Matlab 提供了几个文件位置指针定位操作函数:fseek、ftell 、 frewind 和 feof

Fseek:

status=fseek(fid,offset,origin)

fid 为文件句柄

offset 表示位置指针相对偏移的字节数,若为正表示向文件尾方偏移,若为负表示向文件头方向偏移

origin 表示位置指针移动的参照位置,有三种取值:

'cof' 表示当前位置,

'bof' 表示文件的开始位置,

'eof' 表示文件末尾;

若定位成功,status 返回值为 0,否则返回 -1

ftell、frewind 和 feof:

返回值为从文件开始到指针当前位置的字节数:position=ftell(fid)

将位置指针返回到文件的起始位置:frewind(fid)

判断文件位置指针是否达到文件结束位置,若文件位置指针已在文件末尾,则返回 1,否则返回 0:eofstat=ftell(fid)

最新文章

  1. 在JavaScript中对HTML进行反转义
  2. Tomcat部署web项目
  3. 使用Java数组实现双色球选号
  4. codecademy-command line-inputoutput
  5. 细说HTTP上篇
  6. DB,Cache和Redis应用场景分析
  7. SQLserver中idendity的妙用
  8. Friends(老友记)(六人行)相关资源
  9. dom 左右两侧得广告(兼容IE FF)
  10. css z-index详解
  11. xp 下卸载 硬盘安装的 ubuntu (本人的悲伤史)
  12. 浏览器 HTTP 缓存原理分析
  13. 2.1Android界面View及ViewGroup(转)
  14. php 后端跨域请求
  15. sublime text3搭建react native
  16. Visual Studio的框选代码区块功能
  17. An Introduction to Text Mining using Twitter Streaming
  18. 常用的比较器:实现方式Compareable和Comparator
  19. iOS导航栏自由缩放头像效果
  20. iOS开发给UIView添加动画Animation

热门文章

  1. jsp中的<%%>和<!%%>的区别
  2. Nginx简易配置文件(一)(静态页面及PHP页面解析)
  3. php多文件压缩下载
  4. [Unity3d]向量的过度方法以及拖尾效果
  5. CentOS 7 上安装 redis3.2.3安装与配置
  6. [NHibernate]条件查询Criteria Query
  7. 第3月第11天 vs2005调试 ace编译
  8. mpp文件转换成jpg图片,可以用pdf文件做中转站
  9. [BZOJ3262]陌上花开
  10. ecshop后台增加|添加商店设置选项和使用方法详解