• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

MATLAB读取文件——从非常规文本文件中读取数据

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

从非常规文本文件中读取数据

以下示例演示如何使用 textscan 函数从非常规文件中导入数据。在使用 textscan 时,您的数据无需为常规的行列模式,但必须为重复模式。

创建一个名为 nonrect.dat 的文件,其中包含以下内容(复制并粘贴到文本编辑器):

begin
v1=12.67
v2=3.14
v3=6.778
end
begin
v1=21.78
v2=5.24
v3=9.838
end

使用 fopen 函数打开要读取的文件。

fileID = fopen(\'nonrect.dat\');

fopen 返回一个文件标识符 fileIDtextscan 调用该标识符从文件中读取数据。

使用格式设定符和分隔符参数描述数据的模式。典型的格式设定符包括:表示字符向量的 \'%s\',表示整数的 \'%d\' 或者表示浮点数的 \'%f\'。要导入 nonrect.dat,请使用格式设定符 \'%*s\' 指示 textscan 跳过包含 begin 和 end 的行。将字面值 \'v1=\'\'v2=\' 和 \'v3=\' 作为格式设定符的一部分,这样 textscan 也将忽略这些字面值。

formatSpec = \'%*s v1=%f v2=%f v3=%f %*s\';

使用 textscan 导入数据。将文件标识符 formatSpec 作为输入传递。由于每个数据字段都在一个新行上,因此分隔符为换行符 (\'\n\')。要将所有浮点数据合并到单个数组中,请将 CollectOutput 名称-值对组参数设置为 true

C = textscan(fileID,formatSpec,...            
                \'Delimiter\', \'\n\', ...
                \'CollectOutput\', true)
C = 

    [2x3 double]

textscan 返回元胞数组 C

关闭文件。

fclose(fileID);

查看 C 的内容。

celldisp(C)
C{1} =
 
   12.6700    3.1400    6.7780
   21.7800    5.2400    9.8380




鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
用Delphi开发OPC客户端工具的方法研究发布时间:2022-07-18
下一篇:
Delphi7调试工具的使用发布时间:2022-07-18
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap