注册 登录
编程论坛 VFP论坛

XMLTOCURSOR 出现错误 求解

nbwww 发布于 2023-05-27 20:26, 825 次点击
XMLTOCURSOR("总账类.xml",'zz')
出现下面提示  有人有此类经验吗?
只有本站会员才能查看附件,请 登录

只有本站会员才能查看附件,请 登录

或者说请教一下其他的读取XML的方法   我想要读取 会计期间   如何知道他有几条记录

找到了一份资料   好象可行    试下去
https://blog.

[此贴子已经被作者于2023-5-27 21:33编辑过]

5 回复
#2
my23182023-05-27 21:00
文件可能有问题,把文件贴出来,请版主看看。
#3
sdta2023-05-27 21:50
XML文件也是一种文本文件,用FILETOSTR()读取为字符串,用
OCCURS("<会计期间>",lcStr) 就知道有几条记录了
#4
nbwww2023-05-28 09:12
以下是引用sdta在2023-5-27 21:50:58的发言:

XML文件也是一种文本文件,用FILETOSTR()读取为字符串,用
OCCURS("<会计期间>",lcStr) 就知道有几条记录了

这样分析  如果拿到一个几十M的文件的话很累
根据GB/T 24589.2-2010生成的标准接口文件,后面一个总账类的XML文件很小的单位就10M起   大点的会达到百兆
里面会有几十张表   
#5
csyx2023-05-28 09:44
第二行删掉后面那些定义,就留下 <公共档案>,然后 。。。XMLTOCURSOR("总账类.xml",'zz',512)
#6
nbwww2023-05-28 10:08
有兴趣的朋友完善一下  暂时已解决了

程序代码:


CLEAR
oxml=Createobject("Microsoft.XMLDOM")
oxml.Load("公共档案类.xml")
TRY
    FOR ii=0 TO oxml.documentElement.childNodes.length-1
           ?oxml.documentElement.childNodes.Item(ii).childNodes.Item(0).nodename
        ?oxml.documentElement.childNodes.Item(ii).childNodes.Item(0).text
        ?oxml.documentElement.childNodes.Item(ii).childNodes.Item(1).nodename
        ?oxml.documentElement.childNodes.Item(ii).childNodes.Item(1).text
        ?oxml.documentElement.childNodes.Item(ii).childNodes.Item(2).nodename
        ?oxml.documentElement.childNodes.Item(ii).childNodes.Item(2).text
        ?oxml.documentElement.childNodes.Item(ii).childNodes.Item(3).nodename
        ?oxml.documentElement.childNodes.Item(ii).childNodes.Item(3).text
    ENDFOR
CATCH
  ?"出错了...此处采集结束 "
ENDTRY
RELEASE oxml
1