C#中利用http协议传送XML格式???

Jelindu 2009-08-06 01:32:08
我以经生成了,对方xml指定的格式,对方说不是传ss.xml文件!而是类似如下格式的文件我已经生成了,


现在要传给另外一个平台,并且那个平台接受的地址也给我了,但是不知道我这边怎么传?
给点具体的实例?

格式为

<?xml version="1.0" encoding="UTF-8"?>
<hh xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<a>
<b>b</b>
<c>c</c>
<d>1.0</d>
<e>
<f>
<g>g</g>
<h>h</h>
</f>
</e>
</a>
</hh>

...全文
908 35 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
35 条回复
切换为时间正序
请发表友善的回复…
发表回复
lsd123 2009-08-06
  • 打赏
  • 举报
回复
.
WillWang 2009-08-06
  • 打赏
  • 举报
回复
与目标url建立连接,然后以流的方式发送过去。使用WebClient类


MSDN的例子:

string uriString;
Console.Write("\nPlease enter the URI to post data to : ");
uriString = Console.ReadLine();
Console.WriteLine("\nPlease enter the data to be posted to the URI {0}:",uriString);
string postData = Console.ReadLine();
// Apply Ascii Encoding to obtain an array of bytes.
byte[] postArray = Encoding.ASCII.GetBytes(postData);

// Create a new WebClient instance.
WebClient myWebClient = new WebClient();

// postStream implicitly sets HTTP POST as the request method.
Console.WriteLine("Uploading to {0} ...", uriString); Stream postStream = myWebClient.OpenWrite(uriString);

postStream.Write(postArray,0,postArray.Length);

// Close the stream and release resources.
postStream.Close();

Console.WriteLine("\nSuccessfully posted the data.");



现在非常流行WinForm与web交互么?刚刚见一个帖子就是这个。。。

wdzr_826 2009-08-06
  • 打赏
  • 举报
回复
14楼方法可以参考
HttpWebRequest 和 responsestream
Jelindu 2009-08-06
  • 打赏
  • 举报
回复
[Quote=引用 28 楼 jaylongli 的回复:]
用webservice简单
直接传个 字符串 参数就可以了


[/Quote]
我也想用webservice,但是和移动做项目,他们不用这种方式,webservice给个方法然后把参数直接传过去,只适合,天气预报之类的应用!
Jelindu 2009-08-06
  • 打赏
  • 举报
回复
[Quote=引用 27 楼 cpp2017 的回复:]
读出来格式丢了?
[/Quote]
是的
加油馒头 2009-08-06
  • 打赏
  • 举报
回复
用webservice简单
直接传个 字符串 参数就可以了

cpp2017 2009-08-06
  • 打赏
  • 举报
回复
读出来格式丢了?
Jelindu 2009-08-06
  • 打赏
  • 举报
回复
[Quote=引用 22 楼 cpp2017 的回复:]
这个filename就是那个xml文件啊,读出来肯定是
有格式的.
[/Quote]
filename是Server .MapPath("ss.xml")
超维电脑科技 2009-08-06
  • 打赏
  • 举报
回复
学习了。
cpp2017 2009-08-06
  • 打赏
  • 举报
回复
好像是61菲?
llxzj60 2009-08-06
  • 打赏
  • 举报
回复
美女引人注目
cpp2017 2009-08-06
  • 打赏
  • 举报
回复
这个filename就是那个xml文件啊,读出来肯定是
有格式的.
Jelindu 2009-08-06
  • 打赏
  • 举报
回复
是生成好了,在根目录下,我都看打开xml文件看了!
cpp2017 2009-08-06
  • 打赏
  • 举报
回复
同样没有格式:只是以空格隔开的一些数据内容!
=====>
你不是说这个xml已经生成好了么?
Jelindu 2009-08-06
  • 打赏
  • 举报
回复
[Quote=引用 18 楼 cpp2017 的回复:]
既然从文件中读,就不需要dom对象了。

  System.IO.StreamReader sr = new System.IO.StreamReader("filename");
            string sXML = sr.ReadToEnd();
            sr.Close();



[/Quote]
同样没有格式:只是以空格隔开的一些数据内容!
cpp2017 2009-08-06
  • 打赏
  • 举报
回复
既然从文件中读,就不需要dom对象了。

System.IO.StreamReader sr = new System.IO.StreamReader("filename");
string sXML = sr.ReadToEnd();
sr.Close();


Jelindu 2009-08-06
  • 打赏
  • 举报
回复
[Quote=引用 16 楼 sandy945 的回复:]
没弄出来?
[/Quote]
XmlDocument doc = new XmlDocument();
doc.Load("fileName");
string form = string.Format("<form id='DynamicForm' action='xxx.aspx'><input type='hidden' value='{0}' /></form><script>document.getElementById('DynamicForm').submit();</script>", doc.OuterXml);
Response.Write(form);

用doc.OuterXml返回的只是内容,而其中的xml格式掉了,对方让我传整个格式都要,就传内容他们能解析么?
阿非 2009-08-06
  • 打赏
  • 举报
回复
没弄出来?
Jelindu 2009-08-06
  • 打赏
  • 举报
回复
沮丧!
加载更多回复(14)
第21章 打印与报表技术 579 21.1 报表设计技术 580 0994 如何快速创建水晶报表 580 0995 如何编写带图片的报表 582 0996 如何使图片成为整个报表的背景 583 0997 如何设置水晶报表节的背景图片 583 0998 如何设置水晶报表节的背景色 584 0999 如何设置水晶报表的页面 584 1000 如何在报表添加节 584 1001 如何在报表移动节的顺序 585 1002 如何在报表合并节 585 1003 如何在报表册除节 585 1004 如何在报表显示与隐藏节 586 1005 如何设置多列样式报表 586 1006 如何设置报表节的高度 587 1007 如何设置报表的摘要信息 587 1008 如何设置报表的打印日期与时间 587 21.2 报表格式化类对象技巧 588 1009 如何在报表使用文本对象 588 1010 如何移动对象操作 588 1011 如何对齐多个对象 589 1012 如何使用公式字段 589 1013 如何在报表使用线 590 1014 如何在报表使用方框 590 21.3 报表数据排序与分组技巧 591 1015 如何排序报表数据 591 1016 如何报表数据分组 591 1017 如何报表筛选数据 592 1018 如何对分组报表的页码进行设置 592 21.4 报表的应用技巧 593 1019 如何在水晶报表使用交叉表 593 1020 如何在水晶报表使用子报表 594 1021 如何动态显示子报表 596 1022 如何删除子报表 597 1023 如何在报表计算百分比 597 21.5 Windows打印控件应用技巧 599 1024 如何使用PrintDocument控件打印窗体数据 599 1025 如何使用PrintPreviewContronl控件预览 599 1026 使用PrintPreviewDialog对话框 600 1027 如何使用PrintDialog对话框打印 601 1028 如何使用PageSetupDialog对话框设置页面 601 1029 如何使用PrintDocument控件打印文本文件 602 第22章 C#高级应用开发 605 22.1 线程的使用 606 1030 如何开始一个线程 606 1031 如何结束一个线程 606 1032 如何使线程休眠 606 1033 如何挂起一个线程 606 1034 如何判断线程的状态 606 1035 如何实现线程的同步 607 1036 如何避免死锁 607 22.2 .NET 2.0的新特性 607 1037 如何使用泛型 607 1038 如何使用匿名方法 608 1039 如何使用迭代器 609 1040 如何使用分部类 610 22.3 C#WebService 610 1041 建立SQL Server返回数据集WebService 610 1042 利用WebService传送图片 611 22.4 文件监视 611 1043 如何监视文件的创建 611 1044 如何监视文件的改变 612 1045 如何监视文件的重命名 612 1046 如何监视文件的删除 613 22.5 C#高级应用 613 1047 如何将聊天程序做成Windows服务 613 1048 COM+服务解决同时访问大量数据并发性 615 1049 COM+服务实现银行转账系统 617 1050 如何用Remoting技术传送文件 619 1051 大规模数据访问时缓解服务器压力 620 第23章 硬件及相关开发技术 623 23.1 语音卡、IC卡、神龙卡的使用 624 1052 利用语音卡拨打电话 624 1053 客户来电查询系统 625 1054 向IC卡写入数据 626 1055 从IC卡读取数据 627 1056 利用IC卡制作考勤程序 628 1057 利用神龙卡制作练歌房点歌程序 629 23.2 串口技术与加密狗技术 631 1058 使用串口传输数据 631 1059 通过串口控制对方计算机 631 1060 密码写入与读出加密狗 633 1061 利用加密狗制作登录程序 634 1062 利用条形码销售商品 635 23.3 其他 636 1063 简易摄像头程序 636 1064 超市摄像头定时监控系统 638 1065 利用短信猫收发短信息 639 1066 利用短信远程关闭计算机 641 1067 短信息采集烟草销售数据 643 第24章 网络开发相关技术 645 24.1 Windows服务控制 646 1068 如何暂停IIS的默认网站 646 1069 如何继续IIS的默认网站 646 1070 如何启
net的最近面试经典试题ASP.NET面试题集合 1. 简述 private、 protected、 public、 internal 修饰符的访问权限。 答 . private : 私有成员, 在类的内部才可以访问。 protected : 保护成员,该类内部和继承类可以访问。 public : 公共成员,完全公开,没有访问限制。 internal: 在同一命名空间内可以访问。 2 .列举ASP.NET 页面之间传递值的几种方式。 答. 1.使用QueryString, 如....?id=1; response. Redirect().... 2.使用Session变量 3.使用Server.Transfer 3. 一列数的规则如下: 1、1、2、3、5、8、13、21、34...... 求第30位数是多少, 用递归算法实现。 答:public class MainClass { public static void Main() { Console.WriteLine(Foo(30)); } public static int Foo(int i) { if (i 0 && i <= 2) return 1; else return Foo(i -1) + Foo(i - 2); } } 4.C#的委托是什么?事件是不是一种委托? 答 : 委托可以把一个方法作为参数代入另一个方法。 委托可以理解为指向一个函数的引用。 是,是一种特殊的委托 5.override与重载的区别 答 : override 与重载的区别。重载是方法的名称相同。参数或参数类型不同,进行多次重载以适应不同的需要 Override 是进行基类函数的重写。为了适应需要。 6.如果在一个B/S结构的系统需要传递变量值,但是又不能使用Session、Cookie、Application,您有几种方法进行处理? 答 : this.Server.Transfer 7.请编程遍历页面上所有TextBox控件并给它赋值为string.Empty? 答: foreach (System.Windows.Forms.Control control in this.Controls) { if (control is System.Windows.Forms.TextBox) { System.Windows.Forms.TextBox tb = (System.Windows.Forms.TextBox)control ; tb.Text = String.Empty ; } } 8.请编程实现一个冒泡排序算法? 答: int [] array = new int ; int temp = 0 ; for (int i = 0 ; i < array.Length - 1 ; i++) { for (int j = i + 1 ; j < array.Length ; j++) { if (array[j] < array) { temp = array ; array = array[j] ; array[j] = temp ; } } } 9.描述一下C#索引器的实现过程,是否只能根据数字进行索引? 答:不是。可以用任意类型。 10.求以下表达式的值,写出您想到的一种或几种实现方法: 1-2+3-4+……+m [Page] 答: int Num = this.TextBox1.Text.ToString() ; int Sum = 0 ; for (int i = 0 ; i < Num + 1 ; i++) { if((i%2) == 1) { Sum += i ; } else { Sum = Sum - I ; } } System.Console.WriteLine(Sum.ToString()); System.Console.ReadLine() ; 11.用.net做B/S结构的系统,您是用几层结构来开发,每一层之间的关系以及为什么要这样分层? 答:一般为3层 数据访问层,业务层,表示层。 数据访问层对数据库进行增删查改。 业务层一般分为二层,业务表观层实现与表示层的沟通,业务规则层实现用户密码的安全等。 表示层为了与用户交互例如用户添加表单。 优点: 分工明确,条理清晰,易于调试,而且具有可扩展性。 缺点: 增加成本。 12.在下面的例子里 using Sy

111,088

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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