perl 用 XML::LibXML 解析 Freeplane.mm文件,XML文件

使用libxml2库来生成和解析xml文件 1. 创建一个 XML 文档流程如下: 用 xmlNewDoc 函数创建一个文档指针 doc; 用 xmlNewNode 函数创建一个节点指针 root_node; 用 xmlDocSetRootElement 将 root_node 设置为 doc 的根节点; 给 root_node 添加一系列子节点,并设置字节点的内容和属性; 用 xmlSaveFile 保存 xml 到文件; 阅读详情

Perl 官网 www.cpan.org
从 https://strawberryperl.com/  下载网速太慢了
建议从 https://download.youkuaiyun.com/download/qq_36286161/87892419
下载 strawberry-perl-5.32.1.1-64bit.zip  约105MB
解压后安装.msi,装完后有520MB+,建议安装在D:盘

在云计算中,解析XML元素和属性是一种常见的操作,因为XML是一种常见的数据交换格式,可以用来表示各种不同的数据结构和信息。Perl 是一种过去流行的脚本语言,可以用来处理各种文本数据,包括XML数据。

在Perl 中,可以使用各种模块和函数来解析 XML元素和属性。其中,最常用的模块是  XML::LibXML,它提供了一组完整的XML解析和处理函数,可以非常方便地解析XML文档中的元素和属性。

例如,下面是一个使用 XML::LibXML 模块解析 XML元素和属性 的示例代码:

编写 test_LibXML.pl  如下

#!/usr/bin/perl
use strict;
use warnings;
use utf8;
use XML::LibXML;

if ($#ARGV != 0){
    die "You must specify a file.xml to parse";
}
my $file = shift @ARGV;

# 创建一个XML解析器对象
my $parser = XML::LibXML->new();

# 解析XML文档
my $doc = $parser->parse_file($file)
         or die "cannot read file.xml\n";

my $f2 = $file .'.txt';
# 写入文件
open(my $fw, '>:encoding(UTF-8)', $f2) or die "cannot open file '$f2' $!";

# 获取所有的元素节点
my @nodes = $doc->findnodes('//node');

# 遍历所有的元素节点
foreach my $node (@nodes) {
  # 获取元素名称
  if( $node->nodeName() eq 'node'){

    # 获取所有的属性
    my @attrs = $node->attributes();

    # 遍历所有的属性
    foreach my $attr (@attrs) {
      # 获取属性名称和属性值
      if( $attr->nodeName() eq 'TEXT'){
        my $txt = $attr->value();
        # 输出属性值 #Encode::_utf8_on($txt);
        print $fw "$txt\n"; 
      }    
    }
  }
}
close($fw);

运行 cmd
chcp 65001
perl test_LibXML.pl your_test.mm

在这个示例代码中,我们首先使用XML::LibXML模块创建了一个XML解析器对象,然后使用parse_file函数解析了一个名为 your_test.mm 的XML文件。接着,我们使用findnodes函数获取了所有的元素节点,并遍历了每个元素节点,获取了元素名称和所有的属性。最后,我们遍历了每个属性,获取了属性名称和属性值,并输出了这些信息。

在Windows10系统中Perl安装Tk模块

#!/usr/bin/perl -w
use strict;
use Tk;

my $mw = MainWindow->new;
$mw->geometry("300x300");
$mw->title("Hello World!!!");

$mw->Label(-text => 'Hello World')->pack();

$mw->Button(-text => "Close", -command =>sub{exit})->pack();

MainLoop;

运行 perl tk_hello.pl 

参阅:Perl XML::LibXML by Example — Perl XML::LibXML by Example documentation

Perl 简单读写XML 使用XML::SImple来读写XML t.xml StreamingMediaTranscoder.exe 10.239.254.202 8554 -u SPEED -stats XXXXXXXXXXXXXXXXXXXXXXXXX 1 0 读xml my $xmlfile = "t.xm 阅读详情

相关推荐

perl-libxml-by-example:示例的Perl XML :: LibXML-一个文档项目

阅读HTML版本: 这是一个文档项目,通过示例脚本和逐行说明来介绍Perl 模块。 该项目的功能之一是,您可以使用它来尝试不同的XPath表达式,并查看XML文档的哪些部分是匹配的。 举例说明的Perl XML :: LibXML已获得。

perl LibXML模块使用详解

关于perl中如何获取xml文件的指定内容,可以使用LibXML模块进行,该模块有强大的xpath匹配关系,可以很方便地获取想要的信息,整个模块使用说明,点击如下链接: https://grantm.github.io/perl-libxml-by-example/basics.html

Keep Moving~ 2259

perl读写xml文件

NULL 博文链接:https://zhych8419-163-com.iteye.com/blog/1030013

perl 用 XML::LibXML DOM 解析 Freeplane.mm文件,生成测试用例.csv文件

Perl 这是一个使用 XML::LibXML 模块 DOM方式 解析 XML元素和属性 的示例代码

belldeep的专栏 850

perl处理xml神乎其神

perl语言作为一种胶水语言已经被业界流传很近,perl的处理文本的能力也是众所周知的,次书,详细描述了多种处理xml文件的包极其大量的范例。

基于Python的高考志愿辅助填报系统

在实际应用中,系统需要处理更复杂的数据,包括更多的高校和专业信息、更详细的录取规则、以及用户的历史选择等。系统需要提供用户友好的界面,让考生输入自己的信息和偏好,然后通过后端的模型计算出推荐的志愿列表。此外,系统还应该提供一些个性化的服务,如根据考生的输入动态调整推荐策略、保存用户的填报历史和偏好等。特征可能包括考生的分数、所在省份、文理科类别、专业偏好、高校的地理位置、排名、专业的就业前景等。3. **推荐逻辑**:根据用户的分数和专业偏好,结合历史录取数据,使用简单的算法来推荐可能录取的高校和专业。

coder_wwwdy的博客 1978

perl解析XML的性能比较

perl XML模块 perl解析XML实现方式有很多模块。下面总结一些。 模块 说明 XML::Simple 用于读写 XML 的普通 API,最好与 XML 格式的配置文件一起使用 XML::LibXML gnome libxml2 库的 Perl 接口,用于高性能的 DOM 处理 XML::Parser 用于 James Cl

Gamma Gao的专栏 38万+

AISHELL-2 中文语音数据库

AISHELL-1 is by far the largest open-source speech corpus available for Mandarin speech recognition research. It was released with a baseline system containing solid training and testing pipelines for Mandarin ASR. In AISHELL-2, 1000 hours of cle

AI_SHELL的博客 7890

perl 解析xml_使用Perl的高级XML解析技术

对于种类繁多的Perl应用程序,选择的XML工具是XML::Simple ,这是本系列第1部分的主题(请参阅参考资料 )。 XML::Simple将XML输入文件转换为易于操作的Perl数据结构,并将这些数据结构写回XML。 但是请记住,这种方法在某些情况下不起作用。 当您需要在内存中构建XML文档的表示形式,然后以相当复杂或不可预测的方式搜索或转换XML文档时, XML::Simple并...

cuyi7076的博客 2300

PHP证书图片生成

$realname = "姓名"; $schoolname = "学校"; $idcard = "身份证号"; $image = imagecreatefrompng('certification.png'); // 证书模版图片文件的路径 $red = imagecolorallocate($image,00,00,00); // 字体颜色

4036

智能小车倒车入库功能的实现(python,cpp,ubuntu)

智能小车倒车入库功能的实现(python,cpp,ubuntu)

weixin_62135607的博客 5794

perl 操作xml实例

1.  用XML::Simple来写xml代码如下:#!perl -w use strict; use warnings; use XML::Simple; my $str = <<XML_STRING_;

bruce_wang_janet的专栏 1319

SAP Fiori Launchpad Tile,UI5 应用,和 PFCG Role 的对应关系

问题:已经看到了SAP Fiori Launchpad上的某个tile,如何反推后台需要配置哪个PFCG Role才能看到该tile? 这个问题是今天一个朋友在微信上问我的。因为我最近忙着学习一个新的SAP产品,所以这个问题也没有时间展开来写,本文就只做概要介绍。 下图是一个Gateway系统上打开的SAP CRM Fiori Launchpad: 如何弄清楚后台用户配置了哪个PFCG Role之后,才能看到Sales Representative(CRM)这个Group下的tile? 既然当前我使用的用

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 1521

configure: error: XML::Parser perl module isrequired for intltool

Ubuntu: apt-get install libxml-parser-perl CentOS: 下载:XML-Parser-2.34.tar.gz,解压后: [marco.chan@]$ perl Makefile.PL [marco.chan@]$ make [marco.chan@]$make instal

mqy0513的博客 1252

在Simulink中实现基于深度强化学习的控制算法仿真建模

通过上述步骤,你可以在Simulink中实现基于深度强化学习的控制算法仿真建模。这种方法适用于许多复杂的控制问题,尤其是当传统控制方法难以找到有效解决方案时。随着经验的积累,你可以进一步探索不同的深度强化学习算法及其变种,以适应更广泛的应用场景。此外,还可以结合其他先进技术(如迁移学习、多智能体协作等),提升模型的表现能力。

amy_mhd的博客 416

Python 爬虫实战:微博自动化运营工具(点赞 / 转发 / 评论 + 反封号策略)

微博作为中国最大的社交媒体平台之一,拥有庞大的用户群体和丰富的数据资源。通过 Python 爬虫技术,我们可以实现微博的自动化运营,包括点赞、转发、评论等功能,同时采取有效的反封号策略,确保账号的安全和稳定运行。

u014481728的博客 1179

perl 第一个建立xml文档

使用xml—writer#!c:/perl/bin/use XML::Writer;use IO;#open file stream .Param is file name.my $output = new IO::File(">output.xml");  #new a output stream.  my $writer = new XML::Writer(OUTPUT => $output)

sanshi0815的专栏 1044

【27】软考软件设计师——数据流图(DFD)补全题满分精讲|下午15分大题深度拆解

本文是《软件设计师·50讲通关|从零基础到工程师职称》专栏第27篇,深度精讲**下午案例题第1道必考大题:数据流图(DFD)补全**,该题单题分值高达**12 ~ 15分**,是整张试卷最稳的保底得分大题。我结合多年备考复盘与真题阅卷规则,超详细拆解DFD四大核心元素标准定义、机考绘图规范、三层分层逻辑、**父图子图平衡刚性扣分规则**,升级强化版「DFD满分补全三步法」;复刻历年高频真题完整流程,拆解缺失数据流定位、实体/存储辨析、平衡改错、文字需求对照全流程,配套**阅卷满分答题话术、机考避坑细则

专注于人工智能、软件开发、工控自动化、工厂数字化及智能化等领域,希望和大家共同进步! 592

关于perl缺少XML/LibXML.pm问题解决方法

关于执行perl报出如下错误解决方法: Can't locate XML/LibXML.pm in @INC (@INC contains: /etc/perl /usr/local/lib/perl/5.14.2 /usr/local/share/perl/5.14.2 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.14 /usr/share/

1万+

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

[转]Perl安装libxml

3.3.�libxml Within this tutorial the primary purpose for installing the libxml C library will be to gain access the tools that come with it. The tools provide the means to validate and transf...

weixin_30312563的博客 453

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

perl读写xml

一 读xml 1)xml实例          linux     US             mac     US            windows     US      2)代码 use File::Basename; us

LEE的专栏 2023

Perl 简单读写XML 文件

使用XML::SImple来读写XML info.xml test XIAOMING xxxxxx tetrtre DONGHUA yyyyy 源码: use strict;   use warnings;   use XML::Simple;   use Data::Dumper;   use 5.010;

kongjunlongaa的博客 1658

Can't locate XML/LibXML.pm in @INC

1 错误描述     在Ubuntu14.04(64bit)中使用perl的时候提示: Can't locate XML/LibXML.pm in @INC (you may need to install the XML::LibXML module) (@INC contains: /etc/perl /usr/local/lib/perl/5.18.2 /usr/local/share/

OneSea 5147

如何在Ubuntu下安装XML::LibXML(Perl XML/LibXML lib)?

原文地址:https://stackoverflow.com/questions/13965140/how-can-i-install-xmllibxml-on-ubuntu/50624236 Ubuntu provides a lot of Perl packages natively, with following naming convention: package name always...

logiciel的专栏 2104
上一篇: free pascal 调用 C#程序读 Freeplane.mm文件,生成测试用例.csv文件
下一篇: perl 用 XML::LibXML DOM 解析 Freeplane.mm文件,生成测试用例.csv文件
belldeep
博客等级 码龄20年 1821粉丝 584原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值