matlab 调用 子文件夹,一个文件夹下有很多个子文件夹每个子文件夹下面都有一个.xml文件,需要用MATLAB读取每个xml文件...

一个文件夹下有很多个子文件夹每个子文件夹下面都有一个.xml文件,需要用MATLAB读取每个xml文件

mip版  关注:98  答案:1  悬赏:60

解决时间 2021-01-18 23:45

08c414d6c01e2a988c9bc2af86f97209.png

已解决

2021-01-18 10:39

读取这些xml文件的同一个节点的属性值。比如<?xml version="1.0" encoding="UTF-8"?>

Ice Cream Sundae

大神 我要读取大神中间那个大神。将每个xml文件的.节点的属读出来进行统计,看每种属性值各有多少个。小弟只能写出以下程序:

clc;

clear all;

maindir = 'C:\Users\HU\Desktop\我\1';

subdir = dir( maindir ); % 先确定子文件夹

for i = 1 : length( subdir )

if( isequal( subdir( i ).name, '.' ) || ...

isequal( subdir( i ).name, '..' ) || ...

~subdir( i ).isdir ) % 如果不是目录跳过

continue;

end

subdirpath = fullfile( maindir, subdir( i ).name, '*.xml' );

images = dir( subdirpath ); % 在这个子文件夹下找后缀为xml的文件

for j = 1 : length( images )

imagepath = fullfile( maindir, subdir( i ).name, images( j ).name );

P=imagepath;(输出xml文件路径)

end

end

(以上部分只能读出所有的xml文件名)

%**********具体读取某个xml文件里面的某个节点*******%

xDoc=xmlread('dirs.xml');%读取XML文件

xRoot=xDoc.getDocumentElement();%获取根节点,

% 获取节点

SysExceptInfo= xRoot.getElementsByTagName('SysExceptInfo').item(0);% 获取SysExceptInfo节点集合

% 获取文本内容,设置文本内容

SysExceptInfoContent=char(SysExceptInfo.getTextContent());

(以上部分只能读出一个xml文件的某个节点,所以,在知道这些文件名的情况下,怎么批量读那些xml文件的某个节点,求帮忙!!)

最佳答案

25a1eb46f0c138563f70b13023851e7f.png

2021-01-18 10:48

clc;

clear all;

maindir = 'E:\Temp Folder';

subdir = dir( maindir ); % 先确定子文件夹

for i = 1 : length( subdir )

if( isequal( subdir( i ).name, '.' ) || ...

isequal( subdir( i ).name, '..' ) || ...

~subdir( i ).isdir ) % 如果不是目录跳过

continue;

end

subdirpath = fullfile( maindir, subdir( i ).name, '*.jpg' );

images = dir( subdirpath ); % 在这个子文件夹下找后缀为jpg的文件

% 遍历每张图片

for j = 1 : length( images )

imagepath = fullfile( maindir, subdir( i ).name, images( j ).name )

% imgdata = imread( imagepath ); % 这里进行你的读取操作

end

end

我要举报

如果感觉以上信息为低俗/不良/侵权的信息,可以点下面链接进行举报,我们会做出相应处理,感谢你的支持!

点此我要举报以上信息!

推荐资讯

大家都在看

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值