一章文件输入输出

上传人:仙*** 文档编号:165249272 上传时间:2022-10-27 格式:PPT 页数:42 大小:287KB
返回 下载 相关 举报
一章文件输入输出_第1页
第1页 / 共42页
一章文件输入输出_第2页
第2页 / 共42页
一章文件输入输出_第3页
第3页 / 共42页
点击查看更多>>
资源描述
2022年10月27日第1页第第5章章 文件文件I/Ou高级文件的I/O操作p读写MAT文件或者ASCIIp读写TXT文件p读写EXCEL文件p读写图像文件u低级文件的I/O操作p打开和关闭文件p读写二进制文件p读写格式化的文本文件p控制文件指针位置p几点重要补充2022年10月27日第2页几个概念几个概念l数据输入和输出(数据输入和输出(I/O)输入:从磁盘文件获得数据,加载到工作空间。输入:从磁盘文件获得数据,加载到工作空间。输出:从工作空间变量保存到文件中。输出:从工作空间变量保存到文件中。l高级文件和低级文件高级文件和低级文件I/O操作操作 高级:针对不同的数据格式文件,提供不同的高级:针对不同的数据格式文件,提供不同的I/O函数,函数,有现成的函数供使用,仅需少量编程。有现成的函数供使用,仅需少量编程。低级:使用文件标识符可访问任何类型的数据文件,低级:使用文件标识符可访问任何类型的数据文件,更加灵活地完成相对特殊的任务,需要复杂编程更加灵活地完成相对特殊的任务,需要复杂编程l二进制文件和文本文件(二进制文件和文本文件(ASCII文件)文件)2022年10月27日第3页二进制文件和文本文件二进制文件和文本文件l文本文件将文件看作是由字节文本文件将文件看作是由字节(byte)组成的,每个字组成的,每个字节节(bit)的最高位都是的最高位都是0,文本文件使用了一个字节中,文本文件使用了一个字节中的七位来表示所有的信息,而二进制文件则是将字节的七位来表示所有的信息,而二进制文件则是将字节中的所有位都用上了中的所有位都用上了l打开方式不同,对于这些打开方式不同,对于这些0和和1的处理也就不同。按照的处理也就不同。按照文本方式打开时会进行转换,将每个字节转换成文本方式打开时会进行转换,将每个字节转换成ASCII码,以二进制方式打开则不会进行任何的转换码,以二进制方式打开则不会进行任何的转换l在记事本中进行文本编辑的时进行编辑的最小单位是在记事本中进行文本编辑的时进行编辑的最小单位是字节;而对二进制文件编辑最小单位则是位字节;而对二进制文件编辑最小单位则是位(bit),不,不会直接通过手工的方式对二进制文件进行编辑会直接通过手工的方式对二进制文件进行编辑2022年10月27日第4页1、MAT文件的读写文件的读写 l文件的存储文件的存储 l数据导入数据导入 l文件的打开文件的打开 2022年10月27日第5页MAT文件的存储文件的存储 l保存整个工作区保存整个工作区点击点击“File”菜单中的菜单中的“Save Workspace As”选项,或者点击工作区浏览器工具栏中的选项,或者点击工作区浏览器工具栏中的“Save”,可以将工作区中的变量保存为,可以将工作区中的变量保存为 MAT 文文件。件。l保存工作区中的变量保存工作区中的变量在工作区浏览器中,右键单击需要保存的变量名,在工作区浏览器中,右键单击需要保存的变量名,选择选择“Save As”,将该变量保存为,将该变量保存为 MAT 文件。文件。l利用利用 save 命令保存命令保存该命令可以保存工作区,或工作区中任何指定文该命令可以保存工作区,或工作区中任何指定文件。件。2022年10月27日第6页save命令命令lsave命令的调用格式为:命令的调用格式为:save,将工作区中的所有变量保存在当前工作区中的文件中,文件名为,将工作区中的所有变量保存在当前工作区中的文件中,文件名为 matlab.mat,MAT 文件可以通过文件可以通过 load 函数再次导入工作区,函数再次导入工作区,MAT 函函数可以被不同的机器导入,甚至可以通过其他的程序调用;数可以被不同的机器导入,甚至可以通过其他的程序调用;save(filename),将工作区中的所有变量保存为文件,文件名由,将工作区中的所有变量保存为文件,文件名由 filename 指定。如果指定。如果 filename 中包含路径,则将文件保存在相应目录中包含路径,则将文件保存在相应目录下,否则默认路径为当前路径;下,否则默认路径为当前路径;save(filename,var1,var2,.),保存指定的变量在,保存指定的变量在 filename 指定指定的文件中;的文件中;save(filename,-struct,s),保存结构体,保存结构体 s 中全部域作为单独的变量;中全部域作为单独的变量;save(filename,-struct,s,f1,f2,.),保存结构体,保存结构体 s 中的指定变中的指定变量;量;save(-regexp,expr1,expr2,.),通过正则表达式指定待保存的变量,通过正则表达式指定待保存的变量需满足的条件;需满足的条件;save(.,format),指定保存文件的格式,格式可以为,指定保存文件的格式,格式可以为 MAT 文件、文件、ASCII 文件等。文件等。2022年10月27日第7页函数调用格式函数调用格式函数格式说明函数格式说明save将工作空间所有变量保存在当前目录下文件将工作空间所有变量保存在当前目录下文件matlab.mat内内save fn或或save(fn)将工作空间所有变量保存在当前目录下文件将工作空间所有变量保存在当前目录下文件fn.mat内内save fn x1 x2 xn将变量将变量x1 x2xn保存到当前目录下文件保存到当前目录下文件fn.matsave(fn,-struct,s)保存结构体保存结构体 s 中全部域作为单独的变量中全部域作为单独的变量save(fn,v1,v2,.)保存指定的变量在保存指定的变量在 fn 指定的文件中指定的文件中save(fn,-struct,s,f1,f2,.)保存结构体保存结构体 s 中的指定变量中的指定变量save(-regexp,expr1,expr2,.),通过正则表达式指定待保存的变量需满足的条件通过正则表达式指定待保存的变量需满足的条件save(.,format)指定保存文件的格式,格式可以为指定保存文件的格式,格式可以为 MAT 文件、文件、ASCII 文件等。文件等。2022年10月27日第8页MAT数据导入数据导入 MATLAB 中导入数据通常由函数中导入数据通常由函数 load 实现,该函数的用实现,该函数的用法为:法为:load,如果,如果 matlab.mat 文件存在,导入文件存在,导入 matlab.mat 中的所有中的所有变量,如果不存在,则返回变量,如果不存在,则返回 error;load filename,将,将 filename 中的全部变量导入到工作区中;中的全部变量导入到工作区中;load filename X Y Z.,将,将 filename 中的变量中的变量 X、Y、Z 等导入等导入到工作区中,如果文件为到工作区中,如果文件为 MAT 文件,在指定变量时可以使用通文件,在指定变量时可以使用通配符配符“*”;load filename-regexp expr1 expr2.,通过正则表达式指定需,通过正则表达式指定需要导入的变量;要导入的变量;load-ascii filename,无论输入文件名是否包含有扩展名,将其,无论输入文件名是否包含有扩展名,将其以以 ascii 格式导入,如果指定的文件不是数字文本,则返回格式导入,如果指定的文件不是数字文本,则返回 error;load-mat filename,无论输入文件名是否包含有扩展名,将其,无论输入文件名是否包含有扩展名,将其以以 mat 格式导入,如果指定的文件不是格式导入,如果指定的文件不是 MAT 文件,则返回文件,则返回 error;2022年10月27日第9页Importdata 函数函数lMATLAB 中,另一个导入数据的常用函数为中,另一个导入数据的常用函数为 importdata,该函数的用法为:,该函数的用法为:importdata(filename),将,将 filename 中的数据导入中的数据导入到工作区中;到工作区中;A=importdata(filename),将,将 filename 中的数据导中的数据导入到工作区中,并保存为变量入到工作区中,并保存为变量 A;importdata(filename,delimiter),将,将 filename 中中的数据导入到工作区中,以的数据导入到工作区中,以 delimiter 指定的符号作为指定的符号作为分隔符;分隔符;l与与 load 函数不同,函数不同,importdata 将文件中的数据将文件中的数据以结构体的方式导入到工作区中。以结构体的方式导入到工作区中。2022年10月27日第10页MAT文件的打开文件的打开 lMATLAB 中可以使用中可以使用 open 命令打开各种命令打开各种格式的文件,格式的文件,MATLAB 自动根据文件的扩自动根据文件的扩展名选择相应的编辑器。展名选择相应的编辑器。l读者需要注意的是,读者需要注意的是,open(filename.mat)和和 load(filename.mat)的不同,前者将的不同,前者将filename.mat 以结构体的方式打开在工作以结构体的方式打开在工作区中,后者将文件中的变量导入到工作区区中,后者将文件中的变量导入到工作区中,如果需要访问其中的内容,需要以不中,如果需要访问其中的内容,需要以不同的格式进行。同的格式进行。2022年10月27日第11页2、文本文件的读写、文本文件的读写 l在上一节中介绍的函数和命令主要用于读写在上一节中介绍的函数和命令主要用于读写 mat 文件,在应用中,需要读写更多格式的文件,如文件,在应用中,需要读写更多格式的文件,如文本文件,文本文件,word 文件,文件,xml 文件,文件,xls 文件及图文件及图像、音视频文件等。本节介绍文本文件(像、音视频文件等。本节介绍文本文件(txt)的)的读写。读写。lMATLAB 中实现文本文件读写的函数如表所示。中实现文本文件读写的函数如表所示。函数功能csvread读入以逗号分隔的数据csvwrite将数据写入文件,数据间以逗号分隔dlmread将以 ASCII 码分隔的数值数据读入到矩阵中dlmwrite将矩阵数据写入到文件中,以 ASCII 分隔textread从文本文件中读入数据,将结果分别保存textscan从文本文件中读入数据,将结果保存为单元数组2022年10月27日第12页csvread 函数函数 l M=csvread(filename),将文件,将文件 filename 中的数据读中的数据读入,并且保存为入,并且保存为 M,filename 中只能包含数字,并且数中只能包含数字,并且数字之间以逗号分隔。字之间以逗号分隔。M 是一个数组,行数与是一个数组,行数与 filename 的的行数相同,列数为行数相同,列数为 filename 列的最大值,对于元素不足列的最大值,对于元素不足的行,以的行,以 0 补充。补充。lM=csvread(filename,row,col),读取文件,读取文件 filename 中的数据,起始行为中的数据,起始行为 row,起始列为,起始列为 col,需要注意的是,需要注意的是,此时的行列从此时的行列从 0 开始。开始。lM=csvread(filename,row,col,range),读取文件,读取文件 filename 中的数据,起始行为中的数据,起始行为 row,起始列为,起始列为 col,读取,读取的数据由数组的数据由数组 range 指定,指定,range 的格式为:的格式为:R1 C1 R2 C2,其中,其中 R1、C1 为读取区域左上角的行和列,为读取区域左上角的行和列,R2、C2为读取区域右下角的行和列。为读取区域右下角的行和列。2022年10月27日第13页dlmread 函数函数 lM=dlmread(filename)lM=dlmread(filename,delimiter)lM=dlmread(filename,delimiter,R,C)lM=dlmread(filename,delimiter,range)l其中参数其中参数 delimiter 用于指定文件中的分隔符,用于指定文件中的分隔符,其他参数的意义与其他参数的意义与 csvread 函数中参数的意义相函数中参数的意义相同,这里不再赘述。同,这里不再赘述。dlmread 函数与函数与 csvread 函函数的差别在于,数的差别在于,dlmread 函数在读入数据时可以函数在读入数据时可以指定分隔符,不指定时默认分隔符为逗号。指定分隔符,不指定时默认分隔符为逗号。2022年10月27日第14页dlmwrite 函数函数 ldlmwrite(filename,M),将矩阵,将矩阵 M 的数据写入文件的数据写入文件 filename 中,中,以逗号分隔;以逗号分隔;ldlmwrite(filename,M,D),将矩阵,将矩阵 M 的数据写入文件的数据写入文件 filename 中,采用指定的分隔符分隔数据,如果需要中,采用指定的分隔符分隔数据,如果需要 tab 键,可以用键,可以用“t”指指定;定;ldlmwrite(filename,M,D,R,C),指定写入数据的起始位置;,指定写入数据的起始位置;ldlmwrite(filename,M,attribute1,value1,attribute2,value2,.),指定任意数目的参数,可以指定的参数见下表;指定任意数目的参数,可以指定的参数见下表;ldlmwrite(filename,M,-append),如果,如果 filename 指定的文件存在,指定的文件存在,在文件后面写入数据,不指定时则覆盖原文件;在文件后面写入数据,不指定时则覆盖原文件;ldlmwrite(filename,M,-append,attribute-value list),叙写文件,叙写文件,并指定参数。并指定参数。ldlmwrite 函数的可用参数如表所示。函数的可用参数如表所示。参数名功能delimiter用于指定分隔符newline用于指定换行符,可以选择“pc”或者“unix”roffset行偏差,指定文件第一行的位置,roffset 的基数为 0coffset列偏差,指定文件第一列的位置,coffset 的基数为 0precision指定精确度,可以指定精确维数,或者采用 c 语言的格式,如“%10.5f”2022年10月27日第15页textread,textscan l当文件的格式已知时,可以利用当文件的格式已知时,可以利用 textread 函数和函数和 textscan 函数读入。函数读入。a,b,c,.=textread(filename,format,n)例如,假设文件test_input.dat包含下列数据 James Jones O+3.51 22 Yes Sally Smith A+3.28 23 NO 这些数据用下面的函数读取一系列的数组。first,last,blood,gpa,age,answer=textread(test_input.dat,%s%s%s%f%d%s)2022年10月27日第16页低级文件低级文件I/O l本节介绍一些基本的文件操作,这些操作如表所本节介绍一些基本的文件操作,这些操作如表所示示:函数功能fclose关闭打开的文件feof判断是否为文件结尾ferror文件输入输出中的错误查找fgetl读入一行,忽略换行符fgets读入一行,直到换行符fopen打开文件,或者获取打开文件的信息fprintf格式化输入数据到文件fread从文件中读取二进制数据frewind将文件的位置指针移至文件开头位置fscanf格式化读入fseek设置文件位置指针ftell文件位置指针fwrite向文件中写入数据2022年10月27日第17页fprintf 函数函数 lcount=fprintf(fid,format,A,.),该语句将矩,该语句将矩阵阵 A 及后面其他参数中数字的实部以及后面其他参数中数字的实部以 format 指指定的格式写入到定的格式写入到 fid 指定的文件中,返回写入数指定的文件中,返回写入数据的字节数。据的字节数。l上面语句中,参数上面语句中,参数 format 由由%开头,共可由四开头,共可由四个部分组成,分别为:个部分组成,分别为:标记(标记(flag),为可选部分;),为可选部分;宽度和精度指示,为可选部分;宽度和精度指示,为可选部分;类型标志符,为可选部分;类型标志符,为可选部分;转换字符,为必需部分。转换字符,为必需部分。2022年10月27日第18页标记标记l1标记标记l标记用于控制输出的对齐方式,可以选择的内容标记用于控制输出的对齐方式,可以选择的内容如表所示。如表所示。函数函数功能功能示例示例负号(负号(-)在参数左侧进行判别在参数左侧进行判别%-5.2d加号(加号(+)在数字前添加符号在数字前添加符号%+5.2d空格空格在数字前插入空格在数字前插入空格%5.2d0在数字前插入在数字前插入 0%05.2d2022年10月27日第19页宽度和精度指示宽度和精度指示l2宽度和精度指示宽度和精度指示l用户可以通过数字指定输出数字的宽度及用户可以通过数字指定输出数字的宽度及精度,格式为:精度,格式为:%6f,指定数字的宽度;,指定数字的宽度;%6.2f,指定数字的宽度及精度;,指定数字的宽度及精度;%.2f,指定数字的精度。,指定数字的精度。2022年10月27日第20页转换字符转换字符l3转换字符转换字符l转换字符用于指定输出的符号,可以选择的内容转换字符用于指定输出的符号,可以选择的内容如表所示。如表所示。标志符标志符意义意义%c输出单个字符输出单个字符%d输出有符号十进制数输出有符号十进制数%e采用指数格式输出,采用小写字母采用指数格式输出,采用小写字母 e,如:,如:3.1415e+00%E采用指数格式输出,采用大写字母采用指数格式输出,采用大写字母 E,如:,如:3.1415E+00%f以定点数的格式输出以定点数的格式输出%g%e 及及%f 的更紧凑的格式,不显示数字中无效的的更紧凑的格式,不显示数字中无效的 0%G与与%g 相同,但是使用大写字母相同,但是使用大写字母 E%i有符号十进制数有符号十进制数%o无符号八进制数无符号八进制数%s输出字符串输出字符串%u无符号十进制数无符号十进制数%x十六进制数(使用小写字母十六进制数(使用小写字母 af)2022年10月27日第21页l例例 11-9 利用利用 fprintf 函数在显示器上输出字符串函数在显示器上输出字符串 fprintf(1,Its Friday.n)Its Friday.l在该例中,利用在该例中,利用 1 表示显示器,并且用两个单引表示显示器,并且用两个单引号显示单引号,使用号显示单引号,使用 n 进行换行。在格式化输出进行换行。在格式化输出中,这类符号称为转义符。中,这类符号称为转义符。MATLAB 中的常用转中的常用转义符如表所示。义符如表所示。转义符转义符功能功能b退格退格f表格填充表格填充n换行符换行符r回车回车ttab,反斜线,反斜线 或或,单引号,单引号%,百分号,百分号2022年10月27日第22页2022年10月27日第23页fscanf函数 larray=fscanf(fid,format)larray,count=fscanf(fid,format,size)l其中其中fid是所要读取的文件的文件标识(是所要读取的文件的文件标识(fileid),),format是控制如何读取的格式字符串,是控制如何读取的格式字符串,array是接受是接受数据的数组,输出参数数据的数组,输出参数count返回从文件读取的变量返回从文件读取的变量的个数。参数的个数。参数size指定从文件读取数据的数目。这个指定从文件读取数据的数目。这个函数有以下三个类型。函数有以下三个类型。n 准确地读取准确地读取n个值。执行完相应的语句后,个值。执行完相应的语句后,array将将是一个包含有是一个包含有n个值的列向量个值的列向量 Inf 读取文件中所有值。执行完相应的语句后,读取文件中所有值。执行完相应的语句后,array将是一个列向量,包含有从文件所有值。将是一个列向量,包含有从文件所有值。n,m 从文件中精确定地读取从文件中精确定地读取nm个值。个值。Array是一是一个个nm的数组。的数组。2022年10月27日第24页利用界面工具导入数据利用界面工具导入数据 l选择工作区浏览器工具栏中的选择工作区浏览器工具栏中的“Import Data”,选择待导入的文件,这里我们选择,选择待导入的文件,这里我们选择了一个文本文件,其内容为逗号分隔的数了一个文本文件,其内容为逗号分隔的数字,打开窗口如图所示。字,打开窗口如图所示。2022年10月27日第25页l在该窗口中选择分隔符号,设置导入数据在该窗口中选择分隔符号,设置导入数据的起始行。在左侧窗口中显示的是文件中的起始行。在左侧窗口中显示的是文件中的内容,右侧窗口中是导入数据的预览。的内容,右侧窗口中是导入数据的预览。设置完成后,点击设置完成后,点击 Next,进入下一界面。,进入下一界面。在该界面中可以设置导入方式,预览导入在该界面中可以设置导入方式,预览导入的变量,如图所示。的变量,如图所示。2022年10月27日第26页3、Excel文件的读写文件的读写lxlsfinfo:检查文件是否包含检查文件是否包含Excel表格表格lxlswrite:lxlsread:2022年10月27日第27页4、图像文件的读写、图像文件的读写函数函数调用格式调用格式函数说明函数说明imreadA=imread(fn,fmt)X,map=imread(fn,fmt)=imread(fn)fn,图像文件名,图像文件名,fmt图像文件图像文件格式,如果缺省,会根据扩格式,如果缺省,会根据扩展名识别图像格式展名识别图像格式imwriteimwrite(A,fn,fmt)imwrite(X,map,fn,fmt)Imwrite(,fn)以格式以格式fmt写图像数据写图像数据A到图到图像文件像文件fn。A可为可为mn3(彩色图像)数组。如(彩色图像)数组。如fmt缺缺省,根据省,根据fn扩展名识别扩展名识别imfinfoInfo=imfinfo(fn,fmt)Info=imfinfo(fn)2022年10月27日第28页图像格式其它情况图像格式其它情况lsaveaslprint(h,format,fn)limshowlimage2022年10月27日第29页低级文件低级文件I/O操作操作l1、打开和关闭文件、打开和关闭文件l2、读写二进制文件、读写二进制文件l3、读写格式化的文本文件、读写格式化的文本文件l4、数据文件的定位、数据文件的定位2022年10月27日第30页1、文件的打开与关闭、文件的打开与关闭l文件的打开文件的打开fopen函数的调用格式为:函数的调用格式为:fid=fopen(文件名,打开方式文件名,打开方式)打开方式有:打开方式有:r表示对打开的文件读数据,表示对打开的文件读数据,w表示对打开的文件写数据,表示对打开的文件写数据,a表示在表示在打开的文件末尾添加数据。打开的文件末尾添加数据。fid用于存储文件句柄值,句柄值用来标识该用于存储文件句柄值,句柄值用来标识该数据文件,其他函数可以利用它对该数据文数据文件,其他函数可以利用它对该数据文件进行操作。件进行操作。2022年10月27日第31页文件数据格式文件数据格式有两种形式,一是二进制文件,二是文本文有两种形式,一是二进制文件,二是文本文件。在打开文件时需要进一步指定文件格件。在打开文件时需要进一步指定文件格式类型,即指定是二进制文件还是文本文式类型,即指定是二进制文件还是文本文件。件。2022年10月27日第32页文件的关闭文件的关闭n文件在进行完读、写等操作后,应及时关文件在进行完读、写等操作后,应及时关闭。关闭文件用闭。关闭文件用fclose函数,调用格式为:函数,调用格式为:sta=fclose(fid)该函数关闭该函数关闭fid所表示的文件。所表示的文件。sta表示关闭表示关闭文件操作的返回代码,若关闭成功,返回文件操作的返回代码,若关闭成功,返回0,否则返回否则返回1。2022年10月27日第33页2、二进制文件的读写操作、二进制文件的读写操作n读二进制文件读二进制文件fread 函数可以读取二进制文件的数据,并函数可以读取二进制文件的数据,并将数据存入矩阵。其调用格式为:将数据存入矩阵。其调用格式为:A,COUNT=fread(fid,size,precision)其中其中A用于存放读取的数据,用于存放读取的数据,COUNT返回返回所读取的数据元素个数,所读取的数据元素个数,fid为文件句柄,为文件句柄,size为可选项,若不选用则读取整个文件内为可选项,若不选用则读取整个文件内容,若选用则它的值可以是下列值:容,若选用则它的值可以是下列值:2022年10月27日第34页(1)N表示读取表示读取 N个元素到一个列向量。个元素到一个列向量。(2)Inf表示读取整个文件。表示读取整个文件。(3)M,N表示读数据到表示读数据到MN的矩阵中,数的矩阵中,数据按列存放。据按列存放。precision代表读写数据的类型代表读写数据的类型2022年10月27日第35页写二进制文件写二进制文件fwrite 函数按照指定的数据类型将矩阵中的函数按照指定的数据类型将矩阵中的元素写入到文件中。其调用格式为:元素写入到文件中。其调用格式为:COUNT=fwrite(fid,A,precision)其中其中COUNT返回所写的数据元素个数,返回所写的数据元素个数,fid为文件句柄,为文件句柄,A用来存放写入文件的数据,用来存放写入文件的数据,precision用于控制所写数据的类型,其形式用于控制所写数据的类型,其形式与与fread函数相同。函数相同。2022年10月27日第36页例例4-1 建立一数据文件建立一数据文件magic5.dat,用于存,用于存放放5阶魔方阵。阶魔方阵。程序如下:程序如下:fid=fopen(magic5.dat,w);cnt=fwrite(fid,magic(5),int32);fclose(fid);2022年10月27日第37页3、格式化文本文件的读写操作、格式化文本文件的读写操作l读文本文件读文本文件fscanf 函数的调用格式为:函数的调用格式为:A,COUNT=fscanf(fid,format,size)其中其中A用以存放读取的数据,用以存放读取的数据,COUNT返回返回所读取的数据元素个数。所读取的数据元素个数。fid为文件句柄。为文件句柄。format用以控制读取的数据格式,由用以控制读取的数据格式,由%加加上格式符组成,常见的格式符有上格式符组成,常见的格式符有d,f,c,s。size为可选项,决定矩阵为可选项,决定矩阵A中数据的排列形中数据的排列形式。式。2022年10月27日第38页l写文本文件写文本文件fprintf 函数的调用格式为:函数的调用格式为:COUNT=fprintf(fid,format,A)其中其中A存放要写入文件的数据。先按存放要写入文件的数据。先按format指定的格式将数据矩阵指定的格式将数据矩阵A格式化,然后写入格式化,然后写入到到fid所指定的文件。格式符与所指定的文件。格式符与fscanf函数相函数相同。同。2022年10月27日第39页4、数据文件定位、数据文件定位MATLAB提供了与文件定位操作有关的函提供了与文件定位操作有关的函数数fseek和和ftell。fseek函数用于定位文件函数用于定位文件位置指针,其调用格式为:位置指针,其调用格式为:status=fseek(fid,offset,origin)其中其中fid为文件句柄,为文件句柄,offset表示位置指针表示位置指针相对移动的字节数,相对移动的字节数,origin表示位置指针表示位置指针移动的参照位置。若定位成功,移动的参照位置。若定位成功,status返返回值为回值为0,否则返回值为,否则返回值为1。2022年10月27日第40页ftell函数返回文件指针的当前位置,其调用函数返回文件指针的当前位置,其调用格式为:格式为:position=ftell(fid)返回值为从文件开始到指针当前位置的字返回值为从文件开始到指针当前位置的字节数。若返回值为节数。若返回值为1表示获取文件当前位表示获取文件当前位置失败。置失败。2022年10月27日第41页几点重要的补充几点重要的补充1.连续读取多个文件的数据,并存放在一个矩阵中:连续读取多个文件的数据,并存放在一个矩阵中:(1)首先是如何读取文件名:首先是如何读取文件名:方法一:方法一:filename=dir(*.jpg);那么第那么第i个文件的文件名就可以表示为个文件的文件名就可以表示为 filename(i).name文件数量为:文件数量为:length(filename)2022年10月27日第42页l科学数据保存格式科学数据保存格式 Hdf Netcdf(nc)
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!