怎么搜索XML文档?

sailor001 2003-05-28 10:45:16
我想做一个FTP搜索引擎
生成的XML文档结构如下
<?xml version="1.0" encoding="gb2312"?>
<ftp ip="10.1.228.228">
<DIR path="Game">
<DIR path="仙剑奇侠传2">
<file>complete_camel.rar</file>
<file>complete_funlove.rar</file>
</DIR>
<file>loveher.zip</file>
<file>杀鸡(桌面游戏).exe</file>
<file>猫和老鼠大战.exe</file>
<file>美梦成真(真实版)(吐血推荐).exe</file>
<file>轩辕剑 IVsave.rar</file>
</DIR>
</ftp>
path表示的是文件的路径,file表示的文件名
搜索的内容包括path属性和file的text
...全文
122 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
ricbo 2003-06-03
  • 打赏
  • 举报
回复
最近找到了一个方法,就是用content[.,"string"],来搜索
sailor001 2003-05-30
  • 打赏
  • 举报
回复
Csdn是怎么搜索的呢?
ricbo 2003-05-29
  • 打赏
  • 举报
回复
我也想知道这个问题,up 一下
sailor001 2003-05-29
  • 打赏
  • 举报
回复
不过不管你输入什么,主要是能像一般数据库的搜索一样
sailor001 2003-05-29
  • 打赏
  • 举报
回复
如果我输入的是“桌面游戏”,怎么搜到“杀鸡(桌面游戏).exe”
flydeer 2003-05-29
  • 打赏
  • 举报
回复
这个很容易解决的啊,你在比较字符串的时候,取filenames[i]的最后几个字符,然后判断是否等于你要的文件类型的扩展名啊。只是个字符串的截取和比较操作。

i'm a man
sailor001 2003-05-28
  • 打赏
  • 举报
回复
比如我想找写*.exe的文件,我输入exe或者*.exe,就可以搜到
杀鸡(桌面游戏).exe
猫和老鼠大战.exe
美梦成真(真实版)(吐血推荐).exe
这3个文件,怎么实现呢?

分少再加+++
sailor001 2003-05-28
  • 打赏
  • 举报
回复
如果搜索到某个文件或者文件夹,就读取上层节点的path属性,组成文件的路径提供下载

能不能给个思路?
flydeer 2003-05-28
  • 打赏
  • 举报
回复
不知你是不是在只知道文件名的情况下搜索。假设如此,
如果用DOM,调用getElementsByTagName()
xmlDoc=CreateObject("Microsoft.XMLDOM")
xmlDoc.async="false"
xmlDoc.load("ftp.xml")

filenames=xmlDoc.getElementsByTagName("file")

返回的filenames是一个nodelist集

从i=0循环到filenames.length
比较filenames[i].text跟你要找的文件名称是否相同,如果相同,则
String s[0]=filenames[i].text
逐级取
tempnodes=filenames[i].parentNode
s[j]= tempnodes.getAttribute("path")+"\"

直到xxx.parentNode.nodeName等于ftp
s[j...]="ftp://"+tempnodes.getAttribute("ip")+"\"

然后从s[]的最后一个值加到第一个值,就是要取道的ftp地址了。

如果找不到符合名称的节点,就返回错误信息就可以了

思路是这样的,程序语法你可能会有错误和不周到的地方,你自己研究了

8,906

社区成员

发帖
与我相关
我的任务
社区描述
XML/XSL相关问题讨论专区
社区管理员
  • XML/XSL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧