急!急!!!!大家帮帮忙忙。
<?xml version="1.0" encoding='UTF-8'?>
<ufinterface billtype="" filename="" isexchange="Y" proc="" receiver="" replace="Y" roottag="sendresult" sender="" successful="N">
    <sendresult>
        <billpk>
        </billpk>
        <bdocid>
        </bdocid>
        <filename>
        </filename>
        <resultcode>-31003</resultcode>
        <resultdescription>从输入流转换document出错:请检验文档格式。\n</resultdescription>
        <content></content>
    </sendresult>
</ufinterface>
上面是通过StreamReader.ReadToEnd()写入xml或txt文件后所获得回执信息。
下面是我写的相关代码,哪位大虾帮帮忙忙指点一下(path:xml文件,url:为连接地址字符串):
            HttpWebRequest webrequest = (HttpWebRequest)WebRequest.Create(url);
            webrequest.Method = "POST";
            webrequest.ContentType = "application/x-www-form-urlencoded";这里我试过"text/xml"
            webrequest.ContentLength = 1000;
            Stream requestStream = webrequest.GetRequestStream();
------
            FileStream fs = new FileStream(path, System.IO.FileMode.Open, System.IO.FileAccess.Read);
            byte[] filecontent = new byte[1000];
            while (fs.Read(filecontent, 0, 1000) != 0)
            {
                requestStream.Write(filecontent, 0, 1000);
            }
            fs.Close();
            fs.Dispose();  
------这段总觉得有问题,但不能确定
            HttpWebResponse webreponse = (HttpWebResponse)webrequest.GetResponse();
            Stream mystream;
            mystream = webreponse.GetResponseStream();
            string sHtml = new StreamReader(mystream, System.Text.Encoding.UTF8).ReadToEnd();
            StreamWriter swstream = new StreamWriter("c:\\1.txt", false, System.Text.Encoding.Default);
            swstream.Write(sHtml);
            swstream.Close();

解决方案 »

  1.   


    你的具体需求是什么?读取这个节点的内容?<resultdescription>从输入流转换document出错:请检验文档格式。\n</resultdescription>
      

  2.   

    先谢谢你的回复。
    我不是为了读这个。我是将一个xml凭证post传出,那一段是出现问题的信息。
      

  3.   

                WebRequest request = WebRequest.Create(url);//url 为连接地址
                xmldoc.Load(path);//path为要上传的xml文件
                string postData = HttpUtility.HtmlEncode(xmldoc.InnerXml);                            
                byte[] byteArray = Encoding.UTF8.GetBytes(postData);
                request.Method = "POST";
                request.ContentType = "application/x-www-form-urlencoded";          
                request.ContentLength = byteArray.Length;        
                Stream dataStream = request.GetRequestStream();
                dataStream.Write(byteArray, 0, byteArray.Length);
                dataStream.Close();
                WebResponse response = request.GetResponse();
                dataStream = response.GetResponseStream();                      
                StreamReader reader = new StreamReader(dataStream);                     
                string responseFromServer = reader.ReadToEnd();
                reader.Close(); 
                dataStream.Close(); 
                response.Close();
                StreamWriter swstream = new StreamWriter("c:\\1.txt", false, System.Text.Encoding.Default); 
                swstream.Write(responseFromServer); //将reader.ReadToEnd()返回信息写入1.txt文件中
                swstream.Close();    
       通过上面的代码,执行后,在1.txt文件显示以下信息
    <?xml version="1.0" encoding='UTF-8'?>
    <ufinterface billtype="" filename="" isexchange="Y" proc="" receiver="" replace="Y" roottag="sendresult" sender="" successful="N">
        <sendresult>
            <billpk>
            </billpk>
            <bdocid>
            </bdocid>
            <filename>
            </filename>
            <resultcode>-31003</resultcode>
            <resultdescription>从输入流转换document出错:请检验文档格式。\n</resultdescription>
            <content></content>
        </sendresult>
    </ufinterface>
    哪儿为高人指点一下。