MATLAB操作txt总结
- 格式:doc
- 大小:81.00 KB
- 文档页数:21
matlab基本操作总结-回复使用Matlab进行基本操作是学习和使用Matlab的关键。
在这篇文章中,我将一步一步回答有关Matlab基本操作的问题,帮助您更好地了解和使用Matlab。
Matlab是一种高级编程语言和数值计算环境,广泛用于工程、科学和数学领域。
它提供了丰富的函数库和工具箱,使得使用它进行数据分析、可视化和模拟变得更加简单和高效。
无论您是初学者还是有经验的用户,掌握Matlab的基本操作是非常重要的。
一、Matlab的安装和启动首先,您需要从MathWorks官方网站下载并安装Matlab。
安装过程非常简单,只需按照向导的指示一步一步完成即可。
安装完成后,您可以通过启动菜单或桌面上的Matlab图标来启动Matlab。
启动Matlab后,您将看到一个交互式的命令窗口,可以在其中输入和执行Matlab命令。
二、Matlab的基本操作界面Matlab的基本操作界面由菜单栏、工具栏、编辑窗口、命令窗口和工作区组成。
- 菜单栏提供了各种功能选项,如文件操作、编辑、运行代码、绘图和工具等。
您可以通过单击菜单栏上的选项来执行相应的操作。
- 工具栏上有一些常用的功能按钮,如新建、打开、保存、运行和调试,方便您快速进行一些基本操作。
- 编辑窗口用于编写和编辑Matlab代码。
您可以在此窗口中输入和修改代码,并保存到文件中。
- 命令窗口是与Matlab交互的主要方式。
您可以在命令窗口中输入和执行命令,并查看计算结果。
- 工作区显示了当前Matlab环境中定义的变量和其值。
在通过命令或脚本创建变量后,这些变量将显示在工作区中。
三、Matlab的基本命令Matlab具有大量的内置函数和命令,可以执行各种数学和科学计算。
以下是一些常见的Matlab基本命令:- 计算命令:您可以使用基本算术运算符(+、-、*、/)进行数学计算。
例如,输入"3 + 4",Matlab将返回结果"7"。
绪论时间飞逝,转眼间学习Matlab实训课已经结束。
虽只有短短的几周教学的时间。
但是老师所教给我们的知识却有很多很多。
所以,首先要感谢老师的细心教导。
没有您的讲解我想现在我们对于Matlab这款软件还是充满了神秘感。
还清楚的记得就在几周前,我拿着Matlab书本去机房。
当时,由于线性代数没有开课。
所以,对老师所说的矩阵什么的真的是一点都不懂。
在没有办法的情况下只能硬着头皮去听了。
一节课下了感觉还好,没有我想象中的那么难,大部分按照老师的方式依葫芦画瓢还是可以运行处所要的结果的,但讲到其中的原理就不行了。
就这样我们迎来了第一次实验报告,那次报告在课下完成的还算顺利,但是由于条件的原因当时的几道题目都没有真正的在计算机上运行,没有调试。
但我相信那几题都是正确的,虽没有真正的结果。
就这样第一次的报告过去了。
在接下来的几周里也就是那样的听着、学着。
也没觉得自己有什么进步但是总觉得每一次的课都是听得迷迷糊糊,自己没有太用心在上面。
所以,之后的报告做的就不怎么样了,每次都有好几题不会。
但是,在所有的章节中我对“矩阵”这个章节最感兴趣,同时也是学的比较好的。
所以,接下来我就对我所学的矩阵有关方面的知识做一个小结:矩阵:我们都知道,作为一种科学计算软件。
Matlab专门也矩阵作为基本的运算单位,而从计算机编程语言的角度而言,为了能够和C语言等高级语言保持一定的相似性,Matlab的矩阵在M语言中使用的数组的形式来表示。
而且,matlab 还提供了关于数组和矩阵不同的运算方法。
所以使用Matlab也必须掌握基本的矩阵计算的方法。
那样才能称得上是“了解这款软件”!接下来,将介绍一些基本的知识。
一、矩阵的构造在MatLab中,构造矩阵的方法有两种。
一种是直接法,就是通过键盘输入的方式直接构造矩阵。
另一种是利用函数产生矩阵。
例1.利用magic函数来产生一个矩阵B=magic(3)B=8 1 63 5 74 9 2例2.使用冒号运算符来创建向量在Matlab的命令窗口中键入如下命令:A=1:5A=1 2 3 4 5B=1:2:5B=1 3 5有上面的两组数据我们可以看出:在Matlab创建矩阵时利用“冒号”有所差别。
matlab文件操作及读txt文件matlab文件操作文件操作是一种重要的输入输出方式,即从数据文件读取数据或将结果写入数据文件。
MATLAB提供了一系列低层输入输出函数,专门用于文件操作。
1、文件的打开与关闭1)打开文件在读写文件之前,必须先用fopen函数打开或创建文件,并指定对该文件进行的操作方式。
fopen函数的调用格式为:fid=fopen(文件名,‘打开方式’)说明:其中fid用于存储文件句柄值,如果返回的句柄值大于0,则说明文件打开成功。
文件名用字符串形式,表示待打开的数据文件。
常见的打开方式如下:λ‘r’:只读方式打开文件(默认的方式),该文件必须已存在。
‘r+’:读写方式打开文件,打开后先读后写。
该文件必须已存在。
λλ‘w’:打开后写入数据。
该文件已存在则更新;不存在则创建。
‘w+’:读写方式打开文件。
先读后写。
该文件已存在则更新;不存在则创建。
λλ‘a’:在打开的文件末端添加数据。
文件不存在则创建。
λ‘a+’:打开文件后,先读入数据再添加数据。
文件不存在则创建。
另外,在这些字符串后添加一个“t”,如‘rt’或‘wt+’,则将该文件以文本方式打开;如果添加的是“b”,则以二进制格式打开,这也是fopen函数默认的打开方式。
2)关闭文件文件在进行完读、写等操作后,应及时关闭,以免数据丢失。
关闭文件用fclose函数,调用格式为:sta=fclose(fid)说明:该函数关闭fid所表示的文件。
sta表示关闭文件操作的返回代码,若关闭成功,返回0,否则返回-1。
如果要关闭所有已打开的文件用fclose(‘all’)。
2、二进制文件的读写操作1)写二进制文件fwrite函数按照指定的数据精度将矩阵中的元素写入到文件中。
其调用格式为:COUNT=fwrite(fid,A,precision)说明:其中COUNT返回所写的数据元素个数(可缺省),fid为文件句柄,A用来存放写入文件的数据,precision代表数据精度,常用的数据精度有:char、uchar、int、long、float、double等。
Matlab中txt文件的读写操作命令整理将txt文件中的数据按行显示输出内容:从一个列向量文件中按要求读取指定部分数据后存储成另一个文件。
clear; clc; close all;%k=1:.1:50;%save org_di.txt k-ascii; %用save格式受限制fid=fopen('org_di.txt'); %原始数据是单列多行%temp=fread(fid); %用fread法读出的数据有问题,类似32,43等temp=fscanf(fid,'%f');%temp=load ('org_di.txt'); %n=length(temp);m=5;for k=1:2^m %指定保存前面部分内容¡temp1(k)=temp(k);end% save org_di2.txt -ascii temp1;fclose(fid);fid=fopen('org_di2.txt','w');fprintf(fid,'%f \r\n',temp1(1,:)); %若直接用temp1,则依然是多行单列,并没有在每行后面加回车换行,只是在最后加的回车换行。
可以直接用temp1fclose(fid);文件操作是一种重要的输入输出方式,即从数据文件读取数据或将结果写入数据文件。
MATLAB提供了一系列低层输入输出函数,专门用于文件操作。
1、文件的打开与关闭1) 打开文件fopen在读写文件之前,必须先用fopen函数打开或创建文件,并指定对该文件进行的操作方式。
fopen函数的调用格式为:fid=fopen(文件名,‘打开方式’)说明:其中fid用于存储文件句柄值,如果返回的句柄值大于0,则说明文件打开成功。
文件名用字符串形式,表示待打开的数据文件。
常见的打开方式如下:'r' :只读方式打开文件(默认的方式),该文件必须已存在。
matlabload读取txt用法在MATLAB中,可以使用load函数来读取TXT文件。
load函数有几种用法,可以根据数据的格式和要求进行选择。
一种常见的用法是将TXT文件中的数据加载到一个矩阵中。
假设有一个名为data.txt的TXT文件,它的内容如下:```12345678910```要将这个TXT文件中的数据加载到一个矩阵中,可以使用以下命令:```matlabdata = load('data.txt');```现在,变量data将包含从TXT文件中读取的数据,并以矩阵的形式存储。
在这个例子中,data将是一个2x5的矩阵,包含了文件中的数据。
有时,TXT文件中的数据可能以特定的分隔符分隔,如逗号(,)或制表符(\t)。
可以使用load命令的-ascii选项来指定要使用的分隔符。
假设有一个名为data.txt的文件,它的内容如下:```1,2,3,4,56,7,8,9,10```要将这个以逗号分隔的数据加载到一个矩阵中,可以使用以下命令:```matlabdata = load('data.txt', '-ascii', 'delimiter', ',');```现在,变量data将包含从TXT文件中读取的数据,并以矩阵的形式存储。
load函数也可以用来读取包含文本的TXT文件。
假设有一个包含文本的TXT文件,内容如下:```HelloWorld```要将这个TXT文件中的文本加载到一个字符串数组中,可以使用以下命令:```matlabtext = load('text.txt', '-ascii');```现在,变量text将包含从TXT文件中读取的文本,并以字符串数组的形式存储。
除了load函数,MATLAB还提供了其他函数来读取和处理TXT文件的数据,如fgetl、fscanf和textscan等。
matlab⽤法总结1. Matlab怎么判断空矩阵 a=[ ] if isempty(a)2.matlab寻找多个最⼤值位置a=[2,4,3,5,2,3,5;2,3,4,7,5,4,7];m=max(a(1,:));index=find(a(1,:)==m);max_array=a(1,index);3. [求助] Matlab怎么求⼀个⼆维矩阵中某⼀个⾏向量的位置⽐如有矩阵A=[ 1 1 1;2 2 2;3 3 3;4 4 4;]⾏向量B=[3 3 3]则: B在A的第 3 ⾏A=[ 1 1 1;2 2 23 3 34 4 4];B=[3 3 3];find(ismember(A,B,'rows'))或:[ind,loc] = ismember(A,B,'rows');a = {'A','B','A','C','D'};b = {'A'};[c1,c2] = ismember(b,a)追问:请问,假如a很长,⽽我不知道a⾥⾯有⼏个'A呢?'追答:a = {'A','B','A','C','D'};b = {'A'};n = 1:length(a);c = arrayfun(@(x) ismember(b,a(x)),n);c = n(c)c = 1 34.matlab如何绘制三维曲⾯图xa = -2:0.2:2;ya = xa;[x,y] = meshgrid(xa,ya);% calculate z dataz = x.*exp(-x.^2 - y.^2);mesh(x,y,z);figure;surf(X,Y,Z)5.reshapereshape函数重新调整的⾏数、列数、维数close all; clear; clc;A = [1 2 3; 4 5 6; 7 8 9; 10 11 12] % 4 by 3B = reshape(A, 2, 6) % 2 by 6% C = reshape(A, 2, 4) % error% D = reshape(A, 2, 10) % errorE = reshape(A, 2, 3, 2) % 2 by 3 by 2注意:reshape函数对原数组的抽取是按照列抽取的(对原数组按列抽取,抽取的元素填充为新数组的列)运⾏结果:A =1 2 34 5 67 8 910 11 12B =1 72 83 94 105 116 12E(:,:,1) =1 7 24 10 5E(:,:,2) =8 3 911 6 126.如何利⽤matlab在球⾯上随机⽣成点[x,y,z] = sphere(99);figuremesh(x,y,z)index1 = sort(floor((100*rand(1,10)+1)));index2 = sort(floor((100*rand(1,10)+1)));figurex = x(index1,index2);y = y(index1,index2);z = z(index1,index2);mesh(x,y,z)7.Converting from Cartesian to Spherical matlab?8.matlab 中如何将NxN维矩阵保存进txt ⽂件save A.txt A -ascii -double 只能是nxn 的,多维报错A=load('A.txt', 'ascii'),只能是数值型,字符型报错字符型可以⽤importdata存为cell,再⽤cell2mat转为char型数组fileDir=importdata('fileDir.txt');fileDir=cell2mat(fileDir); 9. MATLAB对于⽂本⽂件(txt)数据读取的技巧总结(经典中的经典)普通数值空格隔开的可以⽤A=load('A.txt', 'ascii')⽂本的可以⽤D = importdata('sample_file2.txt')10.Matlab批量读取⼀个⽂件夹⾥的txt⽂件⽐如说在E:\new下有⼀系列txt⽂件,⽂件名符合matlab变量名的命名规则,并且没有temp.txt⽂件,每个⽂件有两列,以空格分割,第⼀列是字符串,第⼆列是浮点数字,要读取第⼆列的浮点数字为数组并以⽂件名为变量名。
matlab text用法-回复MATLAB(Matrix Laboratory)是一种高级的技术计算软件与编程语言。
它提供了一套强大的工具,用于科学计算、数据分析、图形绘制以及算法开发等不同领域的任务。
MATLAB的编程语言与其他编程语言相似,但它拥有自己的独特语法以及专门用于数值计算的函数库。
在MATLAB中,文本的处理可以使用text对象。
text对象是MATLAB 中用于创建和编辑文本的一种图形对象。
用户可以将文本绘制在图形窗口上的指定位置,并设置文本的字体、颜色、大小等属性。
在本文中,我们将深入探讨MATLAB中text对象的使用方法及其功能。
首先,我们需要先创建一幅图像,以便将文本绘制在其上。
可以使用`figure`函数创建一个新的图形窗口,例如:matlabfigure;接下来,我们可以使用`text`函数来创建一个新的文本对象。
我们可以指定文本的位置、内容以及其他属性。
例如,下面的代码创建了一个位于图形窗口中心的文本对象,并设置其内容为“Hello, World!”:matlabtext(0.5, 0.5, 'Hello, World!');在上述代码中,`text`函数的前两个参数指定了文本对象的位置,即x轴和y轴的坐标,这里的(0.5, 0.5)代表图形窗口中心点的位置。
第三个参数是文本对象的内容,这里为“Hello, World!”。
除了基本的位置和内容,我们还可以设置文本对象的其他属性,例如字体、颜色以及大小。
可以使用`set`函数对文本对象进行属性的修改。
例如,下面的代码将文本对象的字体设置为Helvetica,颜色设置为红色,字体大小设置为16:matlabset(text(0.5, 0.5, 'Hello, World!'), 'FontName', 'Helvetica', 'Color', 'r', 'FontSize', 16);在上述代码中,`set`函数的第一个参数为要修改属性的对象,第二个参数为属性名称,第三个参数为属性值。
matlab实验心得总结《matlab 实验心得总结》在学习和使用 Matlab 的过程中,我经历了从陌生到熟悉,从困惑到领悟的种种阶段。
通过一系列的实验操作,我不仅掌握了 Matlab 这个强大工具的基本使用方法,还深刻体会到了它在解决实际问题中的高效性和灵活性。
Matlab 作为一款广泛应用于科学计算、数据分析和可视化的软件,其功能之强大让我印象深刻。
在最初接触时,面对那繁多的函数和命令,我感到有些无从下手。
但随着实验的逐步深入,我逐渐发现了其中的规律和逻辑。
首先,Matlab 的矩阵运算功能给我带来了极大的便利。
在处理大量数据时,矩阵运算能够快速而准确地完成复杂的计算任务。
通过简单的命令就能实现矩阵的加减乘除、求逆、转置等操作,大大提高了计算效率。
例如,在进行线性方程组的求解时,只需要输入相应的系数矩阵和常数向量,就能迅速得到准确的解。
这让我在处理数学问题时节省了大量的时间和精力。
其次,Matlab 的绘图功能也非常出色。
它能够将数据以直观的图形方式展示出来,帮助我们更好地理解和分析数据。
无论是二维的曲线、散点图,还是三维的曲面图,Matlab 都能轻松绘制。
通过调整绘图的参数和属性,可以得到清晰、美观的图形。
这对于数据的可视化分析和结果的展示起到了至关重要的作用。
在进行实验的过程中,我也遇到了一些困难和挑战。
其中一个常见的问题是语法错误。
由于对 Matlab 的语法规则不够熟悉,在编写程序时经常会出现一些小的错误,比如括号不匹配、变量未定义等。
这些错误往往会导致程序无法正常运行,需要花费时间去仔细检查和修改。
另一个挑战是算法的选择和优化。
在解决一些复杂问题时,需要选择合适的算法来提高程序的运行效率。
但对于初学者来说,很难一下子就找到最优的算法,需要不断地尝试和改进。
为了克服这些困难,我采取了一些有效的学习方法。
首先,我认真阅读了 Matlab 的相关教材和参考书籍,系统地学习了其基本语法和常用函数。
matlab中读取txt文件的几种方法嘿,朋友们!今天咱就来唠唠在 Matlab 里读取 txt 文件的那些门道儿。
你想想啊,txt 文件就像是一个藏着各种宝贝的小盒子,而 Matlab就是打开这个盒子的神奇钥匙。
那怎么用这把钥匙打开盒子呢?有一种方法就像是轻轻地敲开盒子盖儿,这就是使用 load 函数啦。
它能把 txt 文件里的数据一股脑儿地都给弄进来,简单直接,就像你口渴了直接拿起水杯就喝,爽快!还有呢,fopen 函数就像是找到盒子上的锁眼,然后用合适的工具去开锁。
通过它打开文件后,再用 fscanf 或者 fgetl 等函数来一点一点地把数据给“抠”出来,虽然稍微麻烦点,但能让你更精细地处理数据,就像雕刻一件艺术品一样。
再说说 textscan 函数吧,它就像是一个智能的分拣器,能把 txt 文件里的数据按照你设定的规则,整整齐齐地给分好类。
这可太方便啦,能让你快速地找到你想要的那部分数据,就好像在一堆杂物里一下子就找到了你心仪的那个小物件。
你说,这 Matlab 读取 txt 文件的方法是不是很有趣?就像在一个大宝藏里寻宝一样,不同的方法就是不同的寻宝路径。
咱再打个比方,这读取 txt 文件就像是去参加一场比赛,每种方法都是不同的战术。
有的战术简单粗暴,直接冲过去拿分;有的战术则需要精心布局,一点点地突破。
不管是哪种战术,只要能达到目的,那就是好战术,对吧?所以啊,当你在 Matlab 里遇到要读取 txt 文件的时候,可别犯愁,就想想咱说的这些方法,选一个最适合你的,然后大胆地去尝试。
就像那句话说的,“实践出真知”,只有自己试过了,才能真正体会到其中的乐趣和奥秘。
总之呢,Matlab 中读取 txt 文件的这几种方法各有各的好,各有各的用武之地。
你可得好好掌握它们,让它们成为你在数据处理世界里的得力助手!怎么样,是不是迫不及待地想去试试啦?。
使用文本文件(.txt)进行数据存取的技巧总结(相当的经典)使用文本文件(.txt)进行数据存取的技巧总结由于本帖内容较多,部分转自他人的心得,因此,凡转贴的地方仅用“----转----”标注,原作者略去,在此对所有原作者表示感谢!特别说明:由于大家在 I/O 存取上以 txt 文件为主,且读取比存储更麻烦(存储的话 fwrite, fprintf 基本够用),因此下面的讨论主要集中在“txt 文件的读取”上。
除了标注了“转”之外,其余心得均出于本人经验之结果,欢迎大家指正、补充。
一. 基本知识:--------------------------------------------------这是转载内容----------------------------------------------------1. 二进制文件与文本文件的区别:将文件看作是由一个一个字节(byte) 组成的,那么文本文件中的每个字节的最高位都是0,也就是说文本文件使用了一个字节中的七位来表示所有的信息,而二进制文件则是将字节中的所有位都用上了。
这就是两者的区别;接着,第二个问题就是文件按照文本方式或者二进制方式打开,两者会有什么不同呢?其实不管是二进制文件也好,还是文本文件也好,都是一连串的0和1,但是打开方式不同,对于这些0和1的处理也就不同。
如果按照文本方式打开,在打开的时候会进行translate,将每个字节转换成ASCII码,而以按照二进制方式打开的话,则不会进行任何的translate;最后就是文本文件和二进制文件在编辑的时候,使用的方式也是不同的。
譬如,你在记事本中进行文本编辑的时候,你进行编辑的最小单位是字节(byte);而对二进制文件进行编辑的话,最小单位则是位(bit),当然我们都不会直接通过手工的方式对二进制文件进行编辑了。
从文件编码的方式来看,文件可分为ASCII码文件和二进制码文件两种:ASCII文件也称为文本文件,这种文件在磁盘中存放时每个字符对应一个字节,用于存放对应的ASCII码。
例如,数5678的存储形式为:ASCII码:00110101 00110110 00110111 00111000↓↓↓↓十进制码: 5 6 7 8共占用4个字节。
ASCII码文件可在屏幕上按字符显示,例如源程序文件就是ASCII文件,用DOS 命令TYPE可显示文件的内容。
由于是按字符显示,因此能读懂文件内容。
二进制文件是按二进制的编码方式来存放文件的。
例如,数5678的存储形式为:00010110 00101110 只占二个字节。
二进制文件虽然也可在屏幕上显示,但其内容无法读懂。
C系统在处理这些文件时,并不区分类型,都看成是字符流,按字节进行处理。
输入输出字符流的开始和结束只由程序控制而不受物理符号(如回车符)的控制。
因此也把这种文件称作“流式文件”。
2. 文本模式(textmode)和二进制模式(binarymode)有什么区别?流可以分为两种类型:文本流和二进制流。
文本流是解释性的,最长可达255个字符,其中回车/换行将被转换为换行符“\n”,(如果以"文本"方式打开一个文件,那么在读字符的时候,系统会把所有的"\r\n"序列转成"\n",在写入时把"\n"转成"\r\n" )。
二进制流是非解释性的,一次处理一个字符,并且不转换字符。
注:\n一般会操作系统被翻译成"行的结束",即LF(Line-Feed)\r会被翻译成"回车",即CR(Cariage-Return)对于文本文件的新行,在UNIX上,一般用\n(LF)来表示,Mac上用\r(CR)来表示,Windows上是用\n\r(CR-LF)来表示。
通常,文本流用来读写标准的文本文件,或者将字符输出到屏幕或打印机,或者接受键盘的输入;而二进制流用来读写二进制文件(例如图形或字处理文档),或者读取鼠标输入,或者读写调制解调器。
如果用文本方式打开二进制文件,会把“0D0A”自动变换成“\n”来存在内存中。
写入的时候反向处理。
而二进制方式打开的话,就不会有这个过程。
但是,Unicode/UTF/UCS 格式的文件,必须用二进制方式打开和读写。
---------------------------------------------------------------------------------------------------------上述基础其实大可以略过,简言之,对用户来说:在 matlab 中存储成为二进制还是文本文件取决于fopen的方式,如果用wt,则存储为文本文件,这样用记事本打开就可以正常显示了;如果用w则存储为二进制文件,这样用记事本打开会出现小黑方块,要正常显示的话,可以用写字板或UltraEdit等工具打开。
二. Matlab的I/O文件操作使用技巧和总结:1. Matlab 支持的I/O文件(对应“取/存”操作)类型:(所有文件I/O程序不需要特殊的工具箱)/support/tech-notes/1100/1102.html(注:从上表可以看到,matlab不支持doc格式的文档存取(因为doc文档包含很多格式控制符),请改用txt或者dat格式)2. Matlab 的I/O文件指南:/support/tech-notes/1600/1602.html以下是部分对应的中文译文:--------------------------------------------------------------转----------------------------------------本技术支持指南主要处理:ASCII, binary, and MAT files.要得到MATLAB中可用来读写各种文件格式的完全函数列表,可以键入以下命令:help iofunMATLAB中有两种文件I/O程序:high level and low level.High level routines:包括现成的函数,可以用来读写特殊格式的数据,并且只需要少量的编程。
Low level routines:可以更加灵活的完成相对特殊的任务,需要较多的额外编程。
High level routines 包括现成的函数,可以用来读写特殊格式的数据,并且只需要少量的编程。
举个例子,如果你有一个包含数值和字母的文本文件(text file)想导入MATLAB,你可以调用一些low level routines自己写一个函数,或者是简单的用TEXTREAD函数。
使用high level routines的关键是:文件必须是相似的(homogeneous),换句话说,文件必须有一致的格式。
下面的段落描述一些high level file I/O routines并给出一些例子帮助理解概念。
LOAD/SAVE主要的high level file I/O routines 是LOAD和SAVE函数。
LOAD可以读MAT-file data或者用空格间隔的格式相似的ASCII data. SAVE可以将MATLAB变量写入MAT-file格式或者空格间隔的ASCII data。
大多数情况下,语法相当简单。
下面的例子用到数值由空格间隔的ASCII file sample_file.txt:1 5 4 16 85 43 26 890 7 8 7 65 9 81 2 3Example:用 LOAD and SAVE 读写数据CODE:% Load the file to the matrix, M :M = load('sample_file.txt')% Add 5 to M :M = M +5% Save M to a .mat file called 'sample_file_plus5.mat':save sample_file_plus5 M% Save M to an ASCII .txt file called 'sample_file_plus5.txt' :save sample_file_plus5.txt M -asciiUIGETFILE/UIPUTFILEUIGETFILE/UIPUTFILE是基于图形用户界面(GUI)的。
会弹出对话框,列出当前目录的文件和目录,提示你选择一个文件。
UIGETFILE让你选择一个文件来写(类似Windows ‘另存为’选项?)。
用UIGETFILE,可以选择已存在的文件改写,也可以输入新的文件名。
两个函数的返回值是所选文件名和路径。
用 UIGETFILE 从当前目录选择一个 M-fileCODE:% This command lists all the M-files in the current directory and% returns the name and path of the selected file[fname,pname] = uigetfile('*.m','Sample Dialog Box')注意: UIGETFILE 一次只能选择一个文件。
UIIMPORT/IMPORTDATAUIIMPORT是一个功能强大,易于使用的基于GUI的high level routine,用于读complex data files。
文件也必须是homogeneous。
IMPORTDATA形成UIIMPORT的功能,不打开GUI。
可以将IMPORTDATA用于函数或者脚本中,因为在函数或者脚本中基于GUI的文件导入机制并不理想。
下面的例子用到包含几行文件头和文本、数值数据的文件'sample_file2.txt':This is a file header.This is file is an example.col1 col2 col3 col4A 1 4 612.000B 1 4 613.000C 1 4 614.000D 1 4 615.000Example: Using IMPORTDATA to read in a file with headers, text, and numeric dataCODE:% This reads in the file 'sample_file2.txt' and creates a% structure D that contains both data and text data.% Note the IMPORTDATA command specifies a white space% as the delimiter of the file, but IMPORTDATA can usually% detect this on its ownD = importdata('sample_file2.txt','') % 原文有误?D = importdata('sample_file2.txt')可以通过访问结构D的数据和文本域,来看结构D中的真实值,例如输入:data = D.datatext = D.textdata可以用UIIMPORT读同一个文件并得到同样的结构.注意: 对于 ASCII data, 你必须检验导入向导正确的识别了列分隔符。