matlab如何读取其中的一部分文件?

matlab如何读取其中的一部分文件?,第1张

一、纯数据文件(没有字母和中文,纯数字)\x0d\x0a对于这种txt文档,从matalb中读取就简单多了\x0d\x0a例如test.txt文件,内容为\x0d\x0a17.901 -1.1111 33.045 \x0d\x0a17.891 -1.1286 33.045 \x0d\x0a17.884 -1.1345 33.045\x0d\x0a可以在command window中输入load test.txt ,然后就会产生一个test的数据文件,内容跟test.txt中的数据一样;另一种方法是在file/import data....../next/finish 也可产生一个叫test的数据文件。\x0d\x0a二、中英文和数据如test1.txt\x0d\x0a你好 \x0d\x0a欢迎来到 \x0d\x0a论坛 \x0d\x0aedu.cn \x0d\x0a1 11 111 1111 \x0d\x0a2 22 222 2222 \x0d\x0a3 33 333 3333 \x0d\x0a4 44 444 4444 \x0d\x0a5 55 555 5555\x0d\x0a\x0d\x0a这样的文件怎么读入数据呢? \x0d\x0a方法有多种,现举两个比较简单实用的。\x0d\x0a方法一: \x0d\x0afile/import data....../next/finish \x0d\x0a>>whos \x0d\x0aName Size Bytes Class\x0d\x0adata 5x4 160 double array \x0d\x0atextdata 4x1 300 cell array\x0d\x0aGrand total is 54 elements using 460 bytes\x0d\x0a>>data\x0d\x0adata =\x0d\x0a 1 11 1111111 \x0d\x0a 2 22 2222222 \x0d\x0a 3 33 3333333 \x0d\x0a 4 44 4444444 \x0d\x0a 5 55 5555555\x0d\x0a>>textdata\x0d\x0atextdata =\x0d\x0a'你好\x0d\x0a'欢迎来到\x0d\x0a'论坛\x0d\x0a'edu.cn'\x0d\x0a方法二: \x0d\x0a[a1,a2,a3,a4]=textread('test1.txt','%s%s%s%s','headerlines',4) \x0d\x0a说明:%s可以是其他形式,跟读入的数据类型有关,比如这里也可以用%n,%f等。 \x0d\x0a这里%s的个数和[a1,a2,a3,a4]对应。 \x0d\x0a>>[a1,a2,a3,a4]=textread('test1.txt','%s%s%s%s','headerlines',4)\x0d\x0aa1 =\x0d\x0a'1\x0d\x0a'2\x0d\x0a'3\x0d\x0a'4\x0d\x0a'5'\x0d\x0aa2 =\x0d\x0a'11\x0d\x0a'22\x0d\x0a'33\x0d\x0a'44\x0d\x0a'55'\x0d\x0aa3 =\x0d\x0a'111\x0d\x0a'222\x0d\x0a'333\x0d\x0a'444\x0d\x0a'555'\x0d\x0aa4 =\x0d\x0a'1111\x0d\x0a'2222\x0d\x0a'3333\x0d\x0a'4444\x0d\x0a'5555\x0d\x0a因以字符串的形式读入,所以有''。 \x0d\x0a————————————————————————————————\x0d\x0a三、中文 数据 英文 混乱如test.txt\x0d\x0a你好 \x0d\x0a1 11 111 1111 \x0d\x0a欢迎来到 \x0d\x0a2 22 222 2222 \x0d\x0a论坛 \x0d\x0a3 33 333 3333 \x0d\x0aedu.cn \x0d\x0a4 44 444 4444 \x0d\x0a5 55 555 5555\x0d\x0a说明:这种内容格式的文件用上面的方法是不行的。\x0d\x0a以下是由chinamaker编写的一种方法:\x0d\x0afidin=fopen('test.txt') % 打开test2.txt文件 \x0d\x0afidout=fopen('mkmatlab.txt','w') % 创建MKMATLAB.txt文件 \x0d\x0awhile ~feof(fidin) % 判断是否为文件末尾 \x0d\x0atline=fgetl(fidin)% 从文件读行 \x0d\x0aif double(tline(1))>=48&&double(tline(1))>MK\x0d\x0aMK =\x0d\x0a 1 11 1111111 \x0d\x0a 2 22 2222222 \x0d\x0a 3 33 3333333 \x0d\x0a 4 44 4444444 \x0d\x0a 5 55 5555555\x0d\x0a---------------------------------------------------------------\x0d\x0a我的txt数据里既有数字又有字符串,形式为:\x0d\x0a0.129515 DDAA 01 2.24609 94.50000 98\x0d\x0a0.130434 DDAA 01 2.24609 96.30000 9A\x0d\x0a0.131441 DDAA 01 2.24609 97.20000 9B\x0d\x0a0.132448 DDAA 01 2.24609 99.00000 9D\x0d\x0a0.133507 DDAA 01 2.24609 100.80000 9F\x0d\x0a0.134515 DDAA 01 2.24609 101.70000 A0\x0d\x0a............\x0d\x0a我只想要第一列,第四列,第五列。\x0d\x0a也就是0.1295152.2460994.50000 这3列数,\x0d\x0a怎样导入matlab啊?\x0d\x0a\x0d\x0a假设数据在data.txt里,且位于当面matlab路径里,用下面这句就可以了\x0d\x0a[col1,col2,col3]=textread('data.txt','%f %*s %*d %f %f %*s',-1)

1、查看图片所在的位置。

2、输入命令I=imread('E:\1.jpg')。

3、点击右边工作区的名称为I的,可以查看图片的编码。

4、输入命令imsho(I),选择命令,右击,执行所选内容。

5、或选择命令,点击上端的“运行并前进”。

6、如图所示,图片就显示出来了。

1、首先,这里举例自己先制作一个txtde 文本文件,如下面页面的内容。

2、将文本文件放入matlab的工作路径,方便读取 *** 作。例如,如果我的文本文件在桌面上,我可以将matlab的工作路径更改为桌面。具体方法是单击matlab当前工作路径后的省略号,d出选项选择文件夹,然后选择相应的路径。

3、接下来,我们使用importdata函数来读取文件。例如,我想读取一个名为data的文本文件,可以在命令窗口中输入:数据= IMPORTDATA( 'data.txt中')。

4、结果表明数据是一个结构数组。在这一点上,我们可以看看结构的每个部分代表什么。如下图所示,第一个数组表示文本文件的数量,第二个和第三个数组表示文本文件中的中文字符。此时,每个人都可以根据需要引用相应的数组。

5、除了上述功能外,您还可以使用textread函数进行读取。使用此功能时,可以指定输出内容各部分的格式,具体用法是[a,b,c,d] = textread('data.txt','%2s%.3f%.3f%.3f')。

其中,textread的第二个引号表示输出内容的格式。例如,%2s表示第一列的输出格式是单元格数组形式,%。3f表示输出数字保留3个小数位。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11653048.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存