我正在使用R解析XML文件,但我总是得到错误,说XML内容似乎不是XML,但XML文件确实包含XML数据,即使我只是放入一个简单的标记。请参阅下面的示例
有关如何解决此问题的任何建议吗?
R代码:
xmlinfile = "sample.xml"
xml = xmlInternalTreeParse(xmlinfile)
sample.xml中
<?xml version="1.0" encoding="UTF-8"?>
<root>
<name>Sample</name>
</root>
错误:
Error: XML content does not seem to be XML: 'sample.xml'
根据要求,下面是我在解析前打印文件时得到的内容:
xmlinfile = "sample.xml"
sampleFile<-file(xmlinfile,"w")
print(sampleFile)
description class mode text opened can read can write
"sample.xml" "file" "w" "text" "opened" "no" "yes"
非常感谢。
答案 0 :(得分:2)
感谢大家的评论和回答,我想我找到了答案。我的XML文件与导致问题的R脚本位于不同的位置。
但错误消息似乎不正确或直观。但无论如何,它现在有效。 再次感谢大家。 ;)
答案 1 :(得分:1)
很抱歉,但这只是有效:
> library(XML)
> xmlinfile = "sample.xml"
> xml = xmlInternalTreeParse(xmlinfile)
> str(xml)
Classes 'XMLInternalDocument', 'XMLAbstractDocument' <externalptr>
答案 2 :(得分:1)
它的工作原理如下 - &gt;第一次下载,第二次解析
file_q4<-"https://d396qusza40orc.cloudfront.net/getdata%2Fdata%2Frestaurants.xml"
discFile_q4<-"./data/q4_dat.xml"
download.file(file_q4, discFile_q4, method = "wget",quiet = TRUE)
dat_xml<-xmlInternalTreeParse(discFile_q4)
rootNode<-xmlRoot(dat_xml)
完成
答案 3 :(得分:0)
当我意识到我打开了其中一些文档时,尝试对文件夹中的所有docx文件使用readtext
时遇到了相同的错误。将它们全部关闭并重新启动R后,该函数可以正常工作而不会出现错误。