远程对xml的写操作。我现在要做一个东西,他们将xml文件放到外网上,让每天读取1.xml这个文件并将数据写入2.xml文件。 我也上网收索了,好像都没有满意的,结账都为0.我不知道是难还是容易。system.xml 好像写入都不支持url格式,能不能有个整体的东西给我。我现在是一头雾水。

解决方案 »

  1.   

    读取完全可以的,写入2.xml,只能是服务器端写啊,
    读取 XmlDocument.Load(url)
    保存在本机 XmlDocument.Save(path)
    你想保存到远程路径上,你需要采用上传的方法,或者启用 WebDEV
      

  2.   

    读 我是知道的,用ftp上传也知道,可是很多人都说可以直接写,但是又不告诉方法。
      

  3.   

     读xml:
    protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                XmlOption();
            }
        }
        public void XmlOption()
        {
            XmlDocument doc = new XmlDocument();
            try
            {
                doc.Load("http://192.168../?/?.xml");
            }
            catch
            {
                return;
            }
            foreach (XmlNode countnode in doc.ChildNodes)
            {
                if (countnode.Name == "count")
                {
                    foreach (XmlNode cdNode in countnode.ChildNodes)
                    {
                        foreach (XmlNode node in cdNode.ChildNodes)
                        {
                            num[i] = node.InnerText;//事先定义string[] num和int i
                            i++;
                        }
                    }
                }
            }
    修改xml:
     public void XmlOption()
        {
            XmlDocument doc = new XmlDocument();
            try
            {
                doc.Load("http://192.168../?/?.xml");
            }
            catch
            {
                return;
            }
            foreach (XmlNode countnode in doc.ChildNodes)
            {
                if (countnode.Name == "count")
                {
                    foreach (XmlNode cdNode in countnode.ChildNodes)
                    {
                        foreach (XmlNode node in cdNode.ChildNodes)
                        {
                            if (node.Name == "number"+id)
                            {
                                node.InnerText = Convert.ToString((Convert.ToInt32(node.InnerText) + 1));//xml中是数字所以才如此,具体根据自己情况整
                            }
                        }
                    }
                }
            }
            doc.Save("?.xml");绝对路径;比如doc.Save("C:\\down.xml"),注意用\\而不是\
        }
    必须的设置:将2.xml传倒外网,远程连接外网服务器,在服务器上进行以下操作
    1、打开我的电脑-工具-文件夹选项-查看,将使用简单文件共享(推荐)前面的勾去掉;
    2、右击2.xml,在安全选项中添加aspnet用户对该文件的写入权限;保存即可