在perl中将元素添加到xml文件

2023-12-02

我有一个 xml 文件,如下所示:

<root>
 <element1>abc</element1>
 <element2>123</element2>
 <element3>456</element3>
</root>

我正在尝试使用 xml:dom 在 perl 中添加 element4

use XML::DOM;

#parse the file
my $parser = new XML::DOM::Parser;
my $doc = $parser->parsefile ("mytest.xml");
my $root = $doc->getDocumentElement();

my $new_element= $doc->createElement("element4");
my $new_element_text= $doc->createTextNode('testing');
$new_element->appendChild($new_element_text);

$root->appendChild($new_element);

我收到错误: “未定义的子例程 &XML::LibXML::Element::getNodeType ”

我尝试了 insetBefore 方法,通过查找元素并尝试在此之前插入它。

任何指示,我做错了什么?


XML::DOM似乎最后一次更新是在 2000 年,这意味着它不是很受支持的模块。看起来像XML::LibXML提供非常相似的界面,请参见下面的工作示例:

use XML::LibXML;

my $parser = XML::LibXML->new;
my $doc = $parser->parse_file("mytest.xml");
my $root = $doc->getDocumentElement();

my $new_element= $doc->createElement("element4");
$new_element->appendText('testing');

$root->appendChild($new_element);

print $root->toString(1);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在perl中将元素添加到xml文件 的相关文章

  • 加载 highchart 时 Android 错误膨胀类

    我正在尝试加载highcharts via Dialog 下面是我的代码 Gradle implementation com highsoft highcharts highcharts 9 0 1 XML
  • 如何为自定义 Perl 模块选择一个不与内置或 CPAN 包名称冲突的包名称?

    我已阅读模块上的 perldoc http perldoc perl org perlmod html 但我没有看到关于命名包的建议 这样它就不会与内置或 CPAN 模块 包名称冲突 过去 为了开发本地Session pm模块 我使用我公司
  • 如何将数据库查询的行转换为 XML 文件?

    我正在开发一个 Delphi 应用程序 该应用程序需要从一段工作中获取行并将其转换为单个 XML 文件 以便上传到第三方 Web 服务 有没有可用的组件或库可以做到这一点 如果不是 那么构建 DB2XML 转换器的最佳代码方法是什么 我注意
  • JAXB - 忽略元素

    有什么方法可以忽略 Jaxb 解析中的元素吗 我有一个很大的 XML 文件 如果我可以忽略其中一个大而复杂的元素 那么它的解析速度可能会快很多 如果它根本无法验证元素内容并解析文档的其余部分 即使该元素不正确 那就更好了 例如 这应该只生成
  • 文本视图不显示全文

    我正在使用 TableLayout 和 TableRow 创建一个简单的布局 其中包含两个 TextView 这是代码的一部分
  • OpenSSL DH 密钥太小错误

    我正在尝试使用简单的 PERL 脚本连接到封闭的服务器 空调 usr bin perl use 5 10 1 use warnings use strict use IO Socket SSL use IO Socket SSL qw de
  • 在 FOR 循环中打印唯一值

    我有两个文件 myresult 和 annotation 两个文件中的数据似乎是范围 但事实并非如此 这就是为什么我无法将其存储在数组中 我需要使用拆分运算符 以便我可以在 for 循环中使用它并进行比较 现在我需要打印 i myresul
  • 使用 Retrofit 2 解析 XML

    我试图从央行获取汇率 不幸的是他们没有可以提供 JSON 数据的 api 仅在 XML 中 我正在使用 Retrogit 2 我已经创建了两个类 它们描述了我从网站获得的 xml 但是当我尝试获取回调的响应时 我收到了 404 错误代码 也
  • 正则表达式从字符串中提取 IP 和端口

    我正在使用 Perl 尝试从字符串中提取 IP 地址和端口 我尝试使用的正则表达式是 s sip 字符串是 sip 255 255 255 255 8080 transport TCP sip 255 255 255 255 8080 显然
  • 将 XML 映射到 C# 中的类

    我希望使用 XmlSerializer 对象将嵌套元素中的多个 XML 属性映射到单个 POCO 类中 XML
  • 我怎样才能挂钩 Perl 的 use/require 以便抛出异常?

    如果文件已经加载 是否可以挂载到use require所以我可以抛出异常 在我即将到来的nextgen blacklist http github com EvanCarroll nextgen blob blacklist lib nex
  • 在python中读取PASCAL VOC注释

    我在 xml 文件中有注释 例如这个 它遵循 PASCAL VOC 约定
  • PHP 和 DOM 文档

    我有一个关于 DOMDocument 的使用和创建 XML 的问题 我有一个 PHP 程序 加载到 XML 文件中 处理XML的每个节点 行 将其发送到另一个进程 然后该进程返回一个 XML 元素 我获取节点的字符串表示形式 以便可以创建
  • 通过 XML 将重复事件添加到 Google 日历

    我正在尝试通过协议 API 将重复事件添加到我的日历中 我从在 Google 界面中创建的事件中获取了重复标记的语法 并将其用于我的创建请求中 这是我提交的内容
  • XSLT - 追加同级

    我正在尝试使用 XSLT 来附加context param作为最后一个兄弟姐妹 没有共同的父元素 因此任务有点困难 我想附加以下元素
  • XML 创建 - 错误:带有替代方案的重载方法构造函数 UnprefixedAttribute

    scala gt val count 7 count Int 7 将其放入 XML 属性中会出现错误 scala gt val x
  • 在 Ubuntu 中执行 .cgi 文件

    我在 Ubuntu 下运行 Apache PHP 当我运行 cgi 文件时 通过http localhost mycgi cgi 浏览器将显示代码而不是运行它 如何让浏览器执行 CGI 文件而不是显示其内容 将这些行添加到您的 apache
  • Perl Parallel::Forkmanager 不允许收集变量值

    也许因为子进程不知道我的散列 请参阅下面的代码 散列 输出没有收集任何内容 除了写入 tmp 文件之外 还有其他方法来收集该值吗 foreach Item AllItems pid pm gt start Item and next Tem
  • 在 qx 运算符中将 perl 数组拆分为单独的参数

    我试图将一组参数传递给qx操作员 考虑 my files qw A txt B txt print qx ls files 这给出了错误 ls cannot access A txt B txt No such file or direct
  • Booking.com酒店管理API

    我拥有一家酒店 并在 booking com 上查看了 API 因为我想创建自己的前端界面来更新我的酒店房价 房间数 以及通过该 API 上传图片 更新酒店描述 然而 我唯一能找到的是一个 API 供联营公司以一定的价格获取特定位置的酒店等

随机推荐

  • Django 自引用外键

    一般来说 我对网络应用程序和数据库的东西比较陌生 所以这可能是一个愚蠢的问题 我想创建一个模型 CategoryModel 其中的字段指向模型的另一个实例 其父级 的主 ID class CategoryModel models Model
  • 用下划线替换文件名中的括号和空格

    我用这一行删除文件夹名称上的空格 find tmp depth name execdir rename s g 有没有办法从文件名中删除空格和括号并添加下划线 例如 我有 a dir 1 file with spaces and paren
  • XSLT:从 xsd 获取枚举

    我在 xsd 文件中有这个枚举
  • 什么是 Unix 时间戳以及为什么使用它?

    什么是 Unix 时间戳 在 PHP 中 当处理日期时 该函数strtotime 输出一些整数值 那是什么 我试图了解这一点 但我无法得到满意的答案 特别是为什么我们需要使用转换日期strtotime 什么是 Unix 时间戳 简而言之 U
  • 使用 CSOM 对 Sharepoint Online 进行身份验证

    我觉得我在这里错过了一些东西 我尝试通过 C 控制台应用程序登录 SPO 租户 但收到错误 无法联系网站 https xxx sharepoint com 或者网站不支持 SharePoint Online 凭据 响应状态代码为 未经授权
  • 未声明的标识符 - 不确定为什么

    我刚学C 我写了以下内容 void main void unsigned int curr dat 0 The current dat file to use unsigned char ch 0 Key entered at keyboa
  • 在 CMake 中列出 include_directories

    我有一个 cmake 构建 其中我正在搜索一堆依赖项 即我有很多实例 FIND PACKAGE SomePackage if SOMEPACKAGE FOUND include directories SOMEPACKAGE INCLUDE
  • 在 PostgreSQL 中使用 1 个查询选择特定行的最佳方法?

    我有一个 Java 应用程序 要求我在给定特定条件的情况下查找特定记录 例如 我有一张桌子 id song artist record label 1 Never Gonna Give You Up Rick Astley Rickroll
  • highcharts:在可见时而不是在页面加载时触发动画

    我有一个页面分为几个部分 可以通过锚点访问 有没有办法让 highcharts 动画在其特定部分变得可见而不是在页面加载时触发 http jsfiddle net YFMSb 2 图表位于 技能 下 因此希望在调出页面的该部分时出现初始动画
  • 如何使 bootstrap-multiselect 不可见我的默认值?

    我正在使用引导多选插件使处理下拉菜单更容易 但是 我在尝试默认隐藏菜单时遇到了问题 基本上 我有一个复选框 当选中此复选框时 我会显示下拉菜单 当取消选中它时 菜单应该隐藏 默认情况下该复选框未选中 因此我希望默认情况下也隐藏菜单 我尝试使
  • 如何确定Azure中应用程序服务计划CPU百分比90%的原因?

    我试图了解最大 CPU 百分比 内存利用率的原因应用服务计划但无法在天蓝色门户中找到任何简单的方法 在我的应用程序服务计划中 创建了 20 个应用程序服务 在 20 个应用程序服务中 我仅将 2 3 个应用程序服务用于用户界面 其他应用程序
  • 如何在 R 中执行 SQL 脚本时使用动态值

    我的 R 工作流程现在涉及处理大量查询 RPostgreSQL图书馆 我真的想让代码将来变得易于维护和管理 我开始从不同的地方加载大型查询 SQL files this有帮助 并且效果很好 然后我开始使用插值 that有帮助 这意味着我可以
  • 如何在 Apache 中使用 pcntl_fork() ?

    这是我的代码 里面index php 只是一个例子 pid pcntl fork if pid 1 die failed to fork else if pid nothing to do else putDataIntoWebServic
  • android mediaplayer - 播放一次铃声

    我尝试使用 MediaPlayer 类播放一次设备铃声 我必须使用 MediaPlayer 因为我将铃声与应用程序中的其他音频源一起使用 所以我尝试以下方法来播放随机铃声 但我无法阻止它循环 它继续播放 是否可以使用 MediaPlayer
  • 为什么不能将“使用静态”功能与私有枚举一起使用?还有其他选择吗?

    我有一个使用私有枚举的类 我想使用 C 6 使用静态 功能 如下所示 using static ConsoleForSimpleTests Foo MyEnum namespace ConsoleForSimpleTests public
  • 如何使用 XSSF (Apache POI 3.8) 调整图表大小?

    我想知道是否有办法使用 Apache POI XSSF 调整图表大小 目前我正在使用 Excel 模板 该模板具有一个图表 当使用 nameRanges 插入更多数据时 该图表会发生变化 一切正常 我面临的唯一麻烦是 图表始终保持相同的大小
  • 更改 Android 中的通知意图

    我有一项服务显示一条通知 我希望该通知能够在用户每次按下该通知时转到我的应用程序的特定活动 通常它是用户显示的最后一个 但并非总是如此 如果该活动之前已启动 则应返回该活动 如果没有 则应在应用程序的任务内打开该活动 并将其添加到活动任务中
  • 用对象动态填充 ArrayList

    我有抽象类 Human 它由其他两个类 Student 和 Worker 扩展 我正在尝试填写两个数组列表 Student 类型的 ArrayList 和 Worker 类型的 ArrayList 是动态的 public abstract
  • http 到 https 重定向 (tomcat/jboss)

    我们希望将访问应用程序的 http url 的所有流量重定向到 https 为此 我们在deploy jboss web deployer conf 目录中的 web xml 中设置以下值
  • 在perl中将元素添加到xml文件

    我有一个 xml 文件 如下所示