xml 相关问题

可扩展标记语言(XML)是一种灵活的结构化文档格式,用于定义人类和机器可读的编码规则。

GetManifestResourceNames 返回空数组

我正在尝试将 xml 文件加载到方法中来处理它。我有两个项目:SignalServer 和 DbLibrary。在 DbLibrary 内部有一个 SQLQuery 类,它有一个方法 GetResourceTextFile(string

回答 1 投票 0

XML签名:如何计算摘要值?

我有一个像这样的XML A B <...

回答 4 投票 0

XSLT 3.0 处理 JSON:改进基于函数的解决方案 [已关闭]

我采纳了 @Michael Kay 在如何使用 XSLT 将 JSON 转换为 XML?当他说: XSLT 3.0 实际上并不擅长使用模板处理 JSON 规则:可以做到,但事实并非如此

回答 2 投票 0

pugiXML:无法迭代兄弟姐妹!只加载第一个

这是XML代码: 这是 XML 代码: <?xml version="1.0" encoding="utf-8"?> <Enemies> <Enemy id="001" name="Bandit" combatstyle="1" aitype="1" difficulty="1" imgsheet="001.png" level="2" hp"5" /> <Enemy id="005" name="Dragon" combatstyle="1" aitype="1" difficulty="1" imgsheet="002.png" level="5" hp"50" /> </Enemies> 这是我用来搜索内容的代码: pugi::xml_document doc; pugi::xml_parse_result result = doc.load_file("assets/enemies.xml"); pugi::xml_node nodes = doc.child("Enemies"); for (pugi::xml_node tool = nodes.child("Enemy"); tool; tool = tool.next_sibling("Enemy")) { //only here to check if it's working string lol = tool.attribute("name").as_string(); int hi = tool.attribute("id").as_int(); } 当循环执行时 tool = tool.next_sibling("Enemy") 它到达末尾并跳出循环。我可以从第一个敌人那里得到很好的信息,所以我正在做正确的事情。 我不知道我做了什么。但现在看来有效了。这真的很奇怪,我没有对班级做任何改变,现在它可以工作了。 无论如何,一切都好! 我的node.next_sibling(“name1”)也有问题。我有大约 100 个名为“name1”的兄弟姐妹。当我循环遍历它们时,有时循环会到达末尾,但大多数时候它会在兄弟姐妹长度的中间放弃。 始终处于同一位置。我检查了 XML 文件,没有任何区别。我检查了兄弟姐妹之间的地址(在调试器中),并且当循环中断时,下一个兄弟姐妹的地址具有比其他兄弟姐妹更大的偏移量。我不知道为什么会发生这种情况。

回答 2 投票 0

生成 PDF 发票报告的 XML 文件的名称是什么?我如何知道它?

我正在尝试向 PDF 发票添加新列(会员数量)并隐藏税收列。当我生成 PDF 文件时,没有发生任何变化。我想知道哪个 XML 文件生成发票....

回答 1 投票 0

Android XML:“与具有相同 ID 的另一个标签冲突”

我最近从我的项目中删除了一个片段,包括其布局和视图模型。 (FragmentAddFlight、VmAddFlight、fragment_add_flight.xml) 令人惊讶的是我收到这些错误: [数据绑定...

回答 15 投票 0

odoo 17 生成 pdf 发票报告的 xml 文件的名称是什么?我如何知道它?

我正在尝试向 pdf 发票添加一个新列(会员数量),并在生成 pdf 文件时隐藏税收列,没有发生任何变化,我想知道哪个 xml 文件生成发票。 这里...

回答 1 投票 0

如何在 Unity 中的“AndroidManifest.xml”文件中将“android:exported”属性设置为“true”

每当我尝试将 Unity 项目上传到 Play Console 时,都会出现以下错误: “您上传了包含活动、活动别名、服务或广播的 APK 或 Android 应用程序包

回答 2 投票 0

在 XSLT 1.0 中使用“/”分隔符连接值

我有带有产品参数(如颜色)的 XML。 黑色 白色 我想输出一个值...

回答 1 投票 0

使用多个翻译和持续时间偏移重复 Android 动画

我想要一个可以无限上下移动图像的动画。但是,当我运行代码时,动画仅发生一次。这是动画 xml: 我想要一个可以无限上下移动图像的动画。但是,当我运行代码时,动画仅发生一次。这是动画 xml: <?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android" android:interpolator="@android:anim/linear_interpolator" android:repeatCount="3" android:repeatMode="restart"> <!-- move down --> <translate android:fromYDelta="0%" android:toYDelta="50%" android:duration="1500" android:fillAfter="true"/> <!-- move up --> <translate android:fromYDelta="0%" android:startOffset="1500" android:toYDelta="-50%" android:duration="1500" android:fillAfter="true"/> <!-- continue to move up --> <translate android:fromYDelta="0%" android:startOffset="3000" android:toYDelta="-20%" android:duration="600" android:fillAfter="true"/> <!-- down to original pos --> <translate android:fromYDelta="0%" android:startOffset="3600" android:toYDelta="20%" android:duration="600" android:fillAfter="true"/> </set> 这是我的java代码: public class MainActivity extends AppCompatActivity { Animation move1, move2, move3, move4, move5; Button login; ImageView bar1, bar2, bar3, bar4, bar5; int delay1 = 500; int delay2 = 1560; int delay3 = 2300; int delay4 = 3065; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); EdgeToEdge.enable(this); setContentView(R.layout.activity_main); login = findViewById(R.id.btLogin); bar1 = findViewById(R.id.ivBar1); bar2 = findViewById(R.id.ivBar2); bar3 = findViewById(R.id.ivBar3); bar4 = findViewById(R.id.ivBar4); bar5 = findViewById(R.id.ivBar5); move1= AnimationUtils.loadAnimation(getApplicationContext(),R.anim.move); move2= AnimationUtils.loadAnimation(getApplicationContext(),R.anim.move); move3= AnimationUtils.loadAnimation(getApplicationContext(),R.anim.move); move4= AnimationUtils.loadAnimation(getApplicationContext(),R.anim.move); move5= AnimationUtils.loadAnimation(getApplicationContext(),R.anim.move); bar1.startAnimation(move1); Handler handler = new Handler(); handler.postDelayed(() -> bar2.startAnimation(move2), delay1); handler.postDelayed(() -> bar3.startAnimation(move3), delay2); handler.postDelayed(() -> bar4.startAnimation(move4), delay3); handler.postDelayed(() -> bar5.startAnimation(move5), delay4); ViewCompat.setOnApplyWindowInsetsListener(findViewById(R.id.main), (v, insets) -> { Insets systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars()); v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom); return insets; }); } } 为什么它不无限重复?和xml中的fill-after属性有关系吗?非常感谢您的帮助,这是一个班级项目。 从动画 XML 中删除 android:fillAfter="true",并在父 android:repeatCount="infinite" 标记中设置 <set>,而不是 repeatCount="3"。 fillAfter 使每个动画保持其最终状态,防止正确循环。 <?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android" android:interpolator="@android:anim/linear_interpolator" android:repeatCount="infinite" android:repeatMode="restart"> <!-- move down --> <translate android:fromYDelta="0%" android:toYDelta="50%" android:duration="1500"/> <!-- move up --> <translate android:fromYDelta="50%" android:startOffset="1500" android:toYDelta="-50%" android:duration="1500"/> <!-- continue to move up --> <translate android:fromYDelta="-50%" android:startOffset="3000" android:toYDelta="-20%" android:duration="600"/> <!-- down to original pos --> <translate android:fromYDelta="-20%" android:startOffset="3600" android:toYDelta="0%" android:duration="600"/> </set> 这就是让它无限循环所需的全部。

回答 1 投票 0

如何组合 JSON 响应

所以我试图取回多个 json 响应,将它们全部组合成一个 JSON 字符串并将其传递给视图。然后我可以迭代单个响应并访问所有响应...

回答 1 投票 0

如何 xsd 验证带长度限制的格式化文本

我无法创建 xsd 文件来验证评论元素。 元素“comment”可以包含文本和可选子元素 , , 子元素可以嵌套... 我无法创建 xsd 文件来验证评论元素。 元素“comment”可以包含文本和可选子元素<b>, <i>, <ul> 子元素可以嵌套并出现多次 评论内容必须有长度限制(60) 我能够满足 1. 和 2.,但如何添加长度限制? 非常感谢您的帮助! 安德烈亚斯 <?xml version="1.0" encoding="UTF-8"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"> <xs:element name="Test"> <xs:complexType> <xs:sequence> <xs:element name="comment" type="FormattedText" minOccurs="0" /> </xs:sequence> </xs:complexType> </xs:element> <xs:complexType name="FormattedText" mixed="true"> <xs:choice minOccurs="0" maxOccurs="unbounded"> <xs:element ref="b" minOccurs="0" /> <xs:element ref="i" minOccurs="0" /> <xs:element ref="ul" minOccurs="0" /> </xs:choice> </xs:complexType> <xs:complexType name="ULType"> <xs:sequence> <xs:element name="li" minOccurs="1" maxOccurs="unbounded"> <xs:complexType mixed="true"> <xs:choice minOccurs="0" maxOccurs="unbounded"> <xs:element ref="b" minOccurs="0" /> <xs:element ref="i" minOccurs="0" /> <xs:element ref="ul" minOccurs="0" /> </xs:choice> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> <xs:element name="b" type="FormattedText" /> <xs:element name="i" type="FormattedText" /> <xs:element name="ul" type="ULType" /> </xs:schema> 这是 xml 的示例: <?xml version="1.0" encoding="UTF-8"?> <Test> <comment> Abstellorte: <ul> <li>Hinter <b>To<i>r</i></b></li> <li>Am <i>Fenster</i></li> </ul> </comment> </Test> 您可以在 XSD 1.1 中使用断言来执行此操作:test="string-length(.) le 60"。在 XSD 1.0 中无法完成。

回答 1 投票 0

eclipse 中的 SaxParseException:XML 文档结构必须在同一实体内开始和结束

我正在使用JAVA的last.fm API,可以在这里找到。 我有一个巨大的数据集,其中我仅使用包含用户艺术家历史和播放的文件。我用Java编写了一段代码,其中扩展...

回答 3 投票 0

MuleSoft Dataweave JSON 到 XML,重新集成 writeAttributes=true 中的属性

我使用 writeAttributes=true 属性将 XML 片段转换为 JSON。 XML: 荷马 我使用 writeAttributes=true 属性将 XML 片段转换为 JSON。 XML: <family surname="Simpsons"> <father age="42">Homer</father> <mother age="41">Marge</mother> <children> <child age="9">Bart</child> <child age="8">Lisa</child> <child age="1">Maggie</child> </children> </family> 数据编织: %dw 2.0 output application/json writeAttributes=true, duplicateKeyAsArray=true --- payload 生成的 JSON: { "family": { "@surname": "Simpsons", "father": { "@age": "42", "__text": "Homer" }, "mother": { "@age": "41", "__text": "Marge" }, "children": { "child": [ { "@age": "9", "__text": "Bart" }, { "@age": "8", "__text": "Lisa" }, { "@age": "1", "__text": "Maggie" } ] } } } XML 属性和值通过使用修改后的键保留在 JSON 中:“@key”表示属性,“__text”表示值。 虽然使用 writeAttributes writer 属性从 XML 到 JSON 的操作非常简单,但似乎没有等效的方法可以执行相反的操作。 使用这种结果格式,我想将类似的 JSON 转换为原始 XML。 将 JSON 转换回 XML 并重新集成属性的最简单方法是什么? 编辑: 在上面生成的 JSON 负载上使用aled的变换here,我能够得到接近的结果,但子数组元素没有重新获取年龄属性。 aled 的 DataWeave: %dw 2.0 output application/xml fun getAttributes(x) = x match { case is Object -> x filterObject ($$ as String startsWith "@") mapObject ((value, key, index) -> (key[1 to -1] ): value) else -> $ } fun convertToAttributes(x) = x match { case is Object -> x filterObject !($$ as String startsWith "@") mapObject ($$) @((getAttributes($))): convertToAttributes($) case is Array -> x map convertToAttributes($) else -> $ } --- convertToAttributes(payload) 生成的 XML: <?xml version='1.0' encoding='UTF-8'?> <family surname="Simpsons"> <father age="42">Homer</father> <mother age="41">Marge</mother> <children> <child>Bart</child> <child>Lisa</child> <child>Maggie</child> </children> </family> __text 以某种方式成为变换过程中的值。 我不确定为什么它没有获取数组中的年龄。 试试这个: %dw 2.0 output application/xml --- { family @(surname: payload.family.'@surname'): { father @(age: payload.family.father.'@age'): payload.family.father.'__text', mother @(age: payload.family.mother.'@age'): payload.family.mother.'__text', children: { (payload.family.children.child map (child) -> { child @(age: child.'@age'): child.'__text' }) } } }

回答 1 投票 0

将Json转换为Xml的最简单方法

我在.net中有网络服务。当我从数据库检索数据时,它会在 Android Mobile 中返回 JSON 文件。如何将 JSON 文件转换为 XML 或文本。

回答 5 投票 0

XSLT 3.0 处理 JSON:函数与模板:哪个更好? (需要指标和优雅的解决方案)

我采纳了 @Michael Kay 在如何使用 XSLT 将 JSON 转换为 XML?当他说: XSLT 3.0 实际上并不擅长使用模板处理 JSON 规则:可以做到,但事实并非如此

回答 1 投票 0

DataView RowFilter 使用 XML 的日期时间

我有 xml feed 作为 12667274 2024 年 11 月 14 日 08:45 2024 年 11 月 14 日 我有 xml feed 作为 <CalendarEvent> <EventID>12667274</EventID> <StartDate>14/11/2024</StartDate> <StartTime>08:45</StartTime> <EndDate>14/11/2024</EndDate> <EndTime>09:15</EndTime> <Title>Hello Title</Title> <Location>Room 1</Location> </CalendarEvent> 下一行显示了房间 1 中的所有事件。 dv.RowFilter = "Location='Room 1'"; 如何显示当前时间之后的所有事件 dv.RowFilter = "(StartTime >= 'DateTime.Now.ToString(HH:mm)"; 任何帮助将不胜感激,谢谢。 试试这个 DateTime now = DateTime.Now; string currentDate = now.ToString("dd/MM/yyyy"); string currentTime = now.ToString("HH:mm"); dv.RowFilter = $"(StartDate > '{currentDate}' OR (StartDate = '{currentDate}' AND StartTime > '{currentTime}'))";

回答 1 投票 0

XML TEI 到 HTML

我正在尝试编写一个xsl文件,以便将给定的xml转换为html(用于发布)。这是我的示例 xml: 我正在尝试编写一个 xsl 文件,以便将给定的 xml 转换为 html(用于发布)。这是我的示例 xml: <text xml:lang="grc"> <body> <div type="edition" n="urn:cts:greekLit:tlg0059.tlg010.perseus-grc2" xml:lang="grc"> <div type="textpart" subtype="section" resp="perseus" n="11"> <p><said who="#Σωκράτης"><milestone unit="page" resp="Stephanus" n="11"/> <milestone unit="section" resp="Stephanus" n="11a"/><label>ΣΩ.</label> ὅρα δή, Πρώταρχε, τίνα λόγον μέλλεις παρὰ Φιλήβου δέχεσθαι νυνὶ καὶ πρὸς τίνα τὸν παρʼ ἡμῖν ἀμφισβητεῖν, <milestone unit="section" resp="Stephanus" n="11b"/> ἐὰν μή σοι κατὰ νοῦν ᾖ λεγόμενος. βούλει συγκεφαλαιωσώμεθα ἑκάτερον;</said></p> <p><said who="#Πρώταρχος"><label>ΠΡΩ.</label> πάνυ μὲν οὖν.</said></p> <p><said who="#Σωκράτης"><label>ΣΩ.</label> Φίληβος μὲν τοίνυν ἀγαθὸν εἶναί φησι τὸ χαίρειν πᾶσι ζῴοις καὶ τὴν ἡδονὴν καὶ τέρψιν, καὶ ὅσα τοῦ γένους ἐστὶ τούτου σύμφωνα· τὸ δὲ παρʼ ἡμῶν ἀμφισβήτημά ἐστι μὴ ταῦτα, ἀλλὰ τὸ φρονεῖν καὶ τὸ νοεῖν καὶ μεμνῆσθαι καὶ τὰ τούτων αὖ συγγενῆ, δόξαν τε ὀρθὴν καὶ ἀληθεῖς λογισμούς, τῆς γε ἡδονῆς ἀμείνω καὶ λῴω γίγνεσθαι σύμπασιν ὅσαπερ <milestone unit="section" resp="Stephanus" n="11c"/> αὐτῶν δυνατὰ μεταλαβεῖν· δυνατοῖς δὲ μετασχεῖν ὠφελιμώτατον ἁπάντων εἶναι πᾶσι τοῖς οὖσί τε καὶ ἐσομένοις. μῶν οὐχ οὕτω πως λέγομεν, ὦ Φίληβε, ἑκάτεροι;</said></p> <p><said who="#Φίληβος"><label>ΦΙ.</label> πάντων μὲν οὖν μάλιστα, ὦ Σώκρατες.</said></p> <p><said who="#Σωκράτης"><label>ΣΩ.</label> δέχῃ δὴ τοῦτον τὸν νῦν διδόμενον, ὦ Πρώταρχε, λόγον;</said></p> <p><said who="#Πρώταρχος"><label>ΠΡΩ.</label> ἀνάγκη δέχεσθαι· Φίληβος γὰρ ἡμῖν ὁ καλὸς ἀπείρηκεν.</said></p> <p><said who="#Σωκράτης"><label>ΣΩ.</label> δεῖ δὴ περὶ αὐτῶν τρόπῳ παντὶ τἀληθές πῃ περανθῆναι;</said></p> <p><said who="#Πρώταρχος"><milestone unit="section" resp="Stephanus" n="11d"/><label>ΠΡΩ.</label> δεῖ γὰρ οὖν.</said></p> <p><said who="#Σωκράτης"><label>ΣΩ.</label> ἴθι δή, πρὸς τούτοις διομολογησώμεθα καὶ τόδε.</said></p> <p><said who="#Πρώταρχος"><label>ΠΡΩ.</label> τὸ ποῖον;</said></p> <p><said who="#Σωκράτης"><label>ΣΩ.</label> ὡς νῦν ἡμῶν ἑκάτερος ἕξιν ψυχῆς καὶ διάθεσιν ἀποφαίνειν τινὰ ἐπιχειρήσει τὴν δυναμένην ἀνθρώποις πᾶσι τὸν βίον εὐδαίμονα παρέχειν. ἆρʼ οὐχ οὕτως;</said></p> <p><said who="#Πρώταρχος"><label>ΠΡΩ.</label> οὕτω μὲν οὖν.</said></p> <p><said who="#Σωκράτης"><label>ΣΩ.</label> οὐκοῦν ὑμεῖς μὲν τὴν τοῦ χαίρειν, ἡμεῖς δʼ αὖ τὴν τοῦ φρονεῖν;</said></p> <p><said who="#Πρώταρχος"><label>ΠΡΩ.</label> ἔστι ταῦτα.</said></p> 我想以粗体突出显示标签,并且理想情况下,将里程碑部分(如 11b)放置在文本的左边距(但我不知道如何开始执行后一项任务)。 这是我写的xsl: <?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet version="1.0" xmlns="http://www.w3.org/1999/HTML" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="html" encoding="UTF-8" indent="yes"/> <xsl:template match="/"> <xsl:apply-templates/> </xsl:template> <xsl:template match="label"> <b> <xsl:apply-templates/> </b> </xsl:template> <xsl:template match="p"> <p> <xsl:apply-templates/> </p> </xsl:template> </xsl:stylesheet> 但输出是纯文本,没有中断,也没有粗体。任何提示将不胜感激! 您的 XSLT 文件几乎已步入正轨,但它有几个问题需要解决,以实现具有粗体标签和里程碑的所需 HTML 格式。以下是您可以进行的调整和添加: 1.命名空间 您的 XML 没有特定的命名空间,但 XSLT 文件引用了 HTML 命名空间。删除或修改它以确保 XSLT 正确匹配 XML 中的元素。 2.处理 milestone 元素 要将 milestone 元素放置在左边距中,您可以为 milestone 创建特定模板。一种简单的方法是在 <span> 元素内设置它们的样式,并使用 CSS 将它们定位在边距中。 3.格式化输出 为了确保 HTML 输出看起来正确,请为 said、label 和 milestone 等元素指定其他样式和模板。 这是经过这些更改的修订版 XSLT: <?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="html" encoding="UTF-8" indent="yes"/> <xsl:template match="/"> <html> <head> <title>Transformed Text</title> <style> /* Style for labels in bold */ .label { font-weight: bold; } /* Style for milestones on the left margin */ .milestone { float: left; margin-right: 10px; color: gray; } /* Styling paragraphs */ p { margin-left: 20px; text-indent: -20px; } </style> </head> <body> <xsl:apply-templates/> </body> </html> </xsl:template> <!-- Template for paragraphs --> <xsl:template match="p"> <p> <xsl:apply-templates/> </p> </xsl:template> <!-- Template for labels with bold formatting --> <xsl:template match="label"> <span class="label"> <xsl:apply-templates/> </span> </xsl:template> <!-- Template for milestone elements to place them on the left --> <xsl:template match="milestone"> <span class="milestone"> <xsl:value-of select="@n"/> </span> </xsl:template> <!-- Template for 'said' elements --> <xsl:template match="said"> <div> <xsl:apply-templates/> </div> </xsl:template> </xsl:stylesheet> 变更说明: 命名空间更正:删除了 xmlns="http://www.w3.org/1999/HTML",因为它会干扰选择 XML 元素。 CSS 样式:<style> 块中的 CSS 用于: 使用 .label 类的粗体标签。 使用 milestone 类将 .milestone 元素浮动到左边距。 模板: <milestone>元素包裹在<span class="milestone">中,@n用于显示里程碑编号。 <label> 元素包裹在 <span class="label"> 中以实现大胆的样式。 这应该创建一个组织更加直观的 HTML 输出,并在左边距中带有粗体标签和里程碑。

回答 1 投票 0

Azure Databricks:PySpark:无法使用 XSD 验证 XML 文件

这就是我所做的。 创建了一个 XML 文件 xmlPath =“dbfs:/mnt/books.xml” xml字符串 = """ 科雷茨,伊娃 ...

回答 1 投票 0

使用 VBScript 解析 JSON 文件 - QTP/UFT

我正在使用 QTP/UFT 来自动化我的 UI 应用程序。我想将 UI 值与 REST API 响应中的值进行比较。我是 VBScript 新手,我已经编写了调用 RE 的方法...

回答 2 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.