我正在使用包" XML"在R。
中创建XML文件这是我的R代码。
library(XML)
xmlWARN <- xmlParse(strWarningXMLFileName)
xmlWARN <- xmlRoot(xmlWARN)
newXMLNode("StartDateTime", format(min(MyData$timestamp),"%m/%d/%Y %H:%M"), parent = xmlWARN)
newXMLNode("EndDateTime", format(max(MyData$timestamp),"%m/%d/%Y %H:%M"), parent = xmlWARN)
newXMLNode("Granularity", strGranularity, parent = xmlWARN)
newXMLNode("TimeGapInData",blnTimeSlotGaps , parent = xmlWARN)
newXMLNode("TimeGapInDataIntervals",intNumberOfMissingTimeslots , parent = xmlWARN)
newXMLNode("IncompleteTimespan",blnIncompleteTimeSpan , parent = xmlWARN)
saveXML(xmlWARN, strWarningXMLFileName)
这样可以在下面创建我的XML文件。
<Server-Block>
<Platform>LINUX</Platform>
<ServerName>MyServer</ServerName>
<StartDateTime>08/12/2017 00:00</StartDateTime>
<EndDateTime>08/12/2017 11:00</EndDateTime>
<Granularity>1-minute</Granularity>
<TimeGapInData>FALSE</TimeGapInData>
<TimeGapInDataIntervals>0</TimeGapInDataIntervals>
<IncompleteTimespan>FALSE</IncompleteTimespan>
<AtLeastOneThresholdExceeded>TRUE</AtLeastOneThresholdExceeded>
<LinuxCPUUtilizationPercentCollected>TRUE</LinuxCPUUtilizationPercentCollected>
<LinuxCPUUtilizationPercentWithoutWIOThresholdMaximum>80</LinuxCPUUtilizationPercentWithoutWIOThresholdMaximum>
<LinuxCPUUtilizationPercentWithoutWIOThresholdMaximumExceeded>TRUE</LinuxCPUUtilizationPercentWithoutWIOThresholdMaximumExceeded>
<LinuxCPUUtilizationPercentWithoutWIOThresholdMaximumReached>98.887</LinuxCPUUtilizationPercentWithoutWIOThresholdMaximumReached>
<LinuxCPUUtilizationPercentWithoutWIOThresholdAverageReached>9.04793040847201</LinuxCPUUtilizationPercentWithoutWIOThresholdAverageReached>
<LinuxCPUUtilizationPercentWithoutWIOThresholdMaximumReachedCount>25</LinuxCPUUtilizationPercentWithoutWIOThresholdMaximumReachedCount>
<StartDateTime>08/12/2017 00:00</StartDateTime>
<EndDateTime>08/12/2017 11:00</EndDateTime>
<Granularity>1-minute</Granularity>
<TimeGapInData>FALSE</TimeGapInData>
<TimeGapInDataIntervals>0</TimeGapInDataIntervals>
<IncompleteTimespan>FALSE</IncompleteTimespan>
</Server-Block>
我唯一想知道的是如何替换节点的值。
例如改变:
<ServerName>MyServer</ServerName>
到
<ServerName>YourServer</ServerName>
任何建议都将受到赞赏。
谢谢,
娄
答案 0 :(得分:1)
希望这有帮助!
library(XML)
#test.xml is the xml file where you want to make changes
xml_doc = xmlParseDoc("test.xml")
#replace the value of 'ServerName' node
invisible(replaceNodes(xml_doc[["//Server-Block//ServerName/text()"]], newXMLTextNode("YourServer")))
xml_doc
如果它解决了您的问题,请不要忘记告诉我们:)