adams后处理中如何输出相对adams速度函数

我将结果内容用字符串拼接成Json数据并返回的时候,会在结果前面添加xml头部,结果如下。
&span&&&string&xmlns="http://tempuri.org/"&&&
{"data":[{"batchId":"B001","produceOrderId":"",&"produceFactory":"","addTime":"&15:09:00","remark":"","parentId":""},{"batchId":"B002","produceOrderId":"生产订单2",&"produceFactory":"测试公司1","addTime":"&8:00:00","remark":"","parentId":"B001"},{"batchId":"B003","produceOrderId":"生产订单3",&"produceFactory":"测试公司2","addTime":"&0:00:00","remark":"","parentId":"B001"},{"batchId":"B004","produceOrderId":"生产订单4",&"produceFactory":"测试公司3","addTime":"&0:00:00","remark":"","parentId":"B002"},{"batchId":"B005","produceOrderId":"生产订单5",&"produceFactory":"测试公司4","addTime":"&0:00:00","remark":"","parentId":"B004"},{"batchId":"B006","produceOrderId":"生产订单6",&"produceFactory":"外包公司1","addTime":"&0:00:00","remark":"","parentId":"B005"}]}&&
&/string&&/span&&&
产生如上数据的Webservice接口代码如下。
&span&&&&[WebMethod]&&
&&&&public&String&GetQrCodeList(String&qrCode)&&
&&&&&&&&return&PriGetQrCodeList(qrCode);&&
&&&&///&&summary&&&
&&&&///&获取关联的二维码树结构&&
&&&&///&&/summary&&&
&&&&///&&param&name="qrCode"&产品二维码&/param&&&
&&&&///&&returns&&/returns&&&
&&&&private&String&PriGetQrCodeList(String&qrCode)&&
&&&&&&&&try&&
&&&&&&&&{&&
&&&&&&&&&&&&String&sfull&=&"{{\"data\":[{0}]}}";&&
&&&&&&&&&&&&String&spart&=&"{{\"batchId\":\"{0}\",\"produceOrderId\":\"{1}\",&\"produceFactory\":\"{2}\",\"addTime\":\"{3}\",\"remark\":\"{4}\",\"parentId\":\"{5}\"}}";&&
&&&&&&&&&&&&String&sData&=&"";&&
&&&&&&&&&&&&DataTable&dt&=&bll.GetQrCodeList(qrCode);&&
&&&&&&&&&&&&if&(dt&==&null&||&dt.Rows.Count&==&0)&return&"";&&
&&&&&&&&&&&&for&(int&i&=&0;&i&&&dt.Rows.C&i++)&&
&&&&&&&&&&&&{&&
&&&&&&&&&&&&&&&&sData&+=&(String.Format(spart,&&
&&&&&&&&&&&&&&&&&&&&dt.Rows[i]["BatchId"].ToString(),&&
&&&&&&&&&&&&&&&&&&&&dt.Rows[i]["ProduceOrderId"].ToString(),&&
&&&&&&&&&&&&&&&&&&&&dt.Rows[i]["ProduceFactory"].ToString(),&&
&&&&&&&&&&&&&&&&&&&&dt.Rows[i]["AddTime"].ToString(),&&
&&&&&&&&&&&&&&&&&&&&dt.Rows[i]["Remark"].ToString(),&&
&&&&&&&&&&&&&&&&&&&&dt.Rows[i]["ParentId"].ToString())&+&",");&&
&&&&&&&&&&&&}&&
&&&&&&&&&&&&return&String.Format(sfull,&sData.TrimEnd(','));&&
&&&&&&&&}&&
&&&&&&&&catch&(Exception)&&
&&&&&&&&{&&
&&&&&&&&&&&&return&"";&&
&&&&&&&&}&&
&&&&}&/span&&&
解决方案:
改变数据的返回方式,用&Context.Response.Write代替return 语句,修改GetQrCodeList方法如下即可返回正确的Json格式数据。
&span&&&&&&[WebMethod]&&
&&&&public&void&GetQrCodeList(String&qrCode)&&
&&&&&&&&Context.Response.Charset&=&"GB2312";&//设置字符集类型&&
&&&&&&&&Context.Response.ContentEncoding&=&System.Text.Encoding.GetEncoding("GB2312");&&
&&&&&&&&Context.Response.Write(PriGetQrCodeList(qrCode));&&
&&&&&&&&Context.Response.End();&&
&&&&}&/span&&&
返回结果如下:
&span&&{"data":[{"batchId":"B001","produceOrderId":"",&"produceFactory":"","addTime":"&15:09:00","remark":"","parentId":""},{"batchId":"B002","produceOrderId":"生产订单2",&"produceFactory":"测试公司1","addTime":"&8:00:00","remark":"","parentId":"B001"},{"batchId":"B003","produceOrderId":"生产订单3",&"produceFactory":"测试公司2","addTime":"&0:00:00","remark":"","parentId":"B001"},{"batchId":"B004","produceOrderId":"生产订单4",&"produceFactory":"测试公司3","addTime":"&0:00:00","remark":"","parentId":"B002"},{"batchId":"B005","produceOrderId":"生产订单5",&"produceFactory":"测试公司4","addTime":"&0:00:00","remark":"","parentId":"B004"},{"batchId":"B006","produceOrderId":"生产订单6",&"produceFactory":"外包公司1","addTime":"&0:00:00","remark":"","parentId":"B005"}]}&/span&&&
阅读(...) 评论()web service返回的xml格式的数据如何获取其值
这个web&service是别人提供的,我现在调用这个web&service的接口,这个接口是返回一个xml格式的数据,我现在如何获得xml中的数据?
需不需要知道对方web&service所返回的数据类型?
你不是说返回的是XML内容吗?你再问什么类型就是多此一举,呵 具体怎么操作要看你用什么编程语言,但原理都是一样的。 如果是C#,可以用XmlDocument来分析获取的内容。
--- 共有 1 条评论 ---
恩,使用C#语言,使用xmlDocument来解析
dom4j什么的
--- 共有 5 条评论 ---
谢谢你啊!我明天再继续学习吧
: 把XML报文当成是XML文档,然后搜java xml文档解析, Good Luck
我为了获取xml中的数据值。。。
: 你解析XML文档用什么?
你能说具体一点吗?
用axis2,根据webservice的wsdl生成客户端java代码,直接new调用,很方便了。
documenthelper.parsetext(&&?version=1.0...........................&);博客访问: 23603
博文数量: 15
博客积分: 610
博客等级: 上士
技术积分: 160
注册时间:
IT168企业级官微
微信号:IT168qiye
系统架构师大会
微信号:SACC2013
问题: Webservice 接口对于返回 blob 类型的数据,应该如何进行处理。场景:项目中,需要为其他应用提供 Webservice 接口,返回结构为 xml 。过程:对于一般的类型的数据,返回结果保存在 xml 中没有问题,而且我们对于数据的保存采用的是 CDATA ,但是对于blob类型,例如照片,文件等,就需要进行特殊处理。直接插入 CDATA 中,显卡驱动报错,内存读取溢出。(原因是特殊字符的存在。)引入 BASE64 编码,对binary的数据进行 encode ,显示 xml 返回结构不匹配,报错。(soap自动加载 CDATA)数据结构去除 CDATA ,可以正常显示,但是速度比较慢,对于大批量的数据,速度难以忍受。采用附件类型,应该可以解决这个问题。对于附件类型的 Webservice ,没有很好的例子,不过可以参考 IBM Webservice Redbook 中的天气预报例子。而且对于附件类型的方法,IBM 没有直接生成的方法,需要手工进行设置。结论:Webservice 目前还是天下大乱,具体实现机制差别较大,尤其是附件类型。同期项目中还有需要屏蔽数据库差异的问题,对于不同类型的数据库,blob的操作上也存在问题,看来还是急需 SDO 的到来啊。
阅读(1126) | 评论(0) | 转发(0) |
下一篇:没有了
相关热门文章
给主人留下些什么吧!~~
请登录后评论。15974人阅读
Asp.net & C#(216)
/// &summary&
/// POST提交XML文件获取返回数据
/// &/summary&
/// &param name=&url&&网址&/param&
/// &param name=&strPost&&XML数据&/param&
/// &returns&&/returns&
private string PostXml(string url, string strPost)
string result = &&;
StreamWriter myWriter =
HttpWebRequest objRequest = (HttpWebRequest)WebRequest.Create(url);
objRequest.Method = &POST&;
objRequest.ContentLength = strPost.L
objRequest.ContentType = &text/xml&;//提交xml
//objRequest.ContentType = &application/x-www-form-urlencoded&;//提交表单
myWriter = new StreamWriter(objRequest.GetRequestStream());
myWriter.Write(strPost);
catch (Exception e)
return e.M
myWriter.Close();
HttpWebResponse objResponse = (HttpWebResponse)objRequest.GetResponse();
using (StreamReader sr = new StreamReader(objResponse.GetResponseStream()))
result = sr.ReadToEnd();
sr.Close();
/// &summary&
/// Post提交获取返回数据
/// &/summary&
/// &param name=&url&&网址&/param&
/// &returns&&/returns&
protected string GetWebContent(string url)
Stream outstream =
Stream instream =
StreamReader sr =
HttpWebResponse response =
HttpWebRequest request =
// 要注意的这是这个编码方式,还有内容的Xml内容的编码方式
Encoding encoding = Encoding.GetEncoding(&UTF-8&);
byte[] data = encoding.GetBytes(url);
// 准备请求,设置参数
request = WebRequest.Create(url) as HttpWebR
request.Method = &POST&;
//request.ContentType = &text/plain&;
request.ContentLength = data.L
outstream = request.GetRequestStream();
outstream.Write(data, 0, data.Length);
outstream.Flush();
outstream.Close();
//发送请求并获取相应回应数据
response = request.GetResponse() as HttpWebR
//直到request.GetResponse()程序才开始向目标网页发送Post请求
instream = response.GetResponseStream();
sr = new StreamReader(instream, encoding);
//返回结果网页(html)代码
string content = sr.ReadToEnd();
#region WebService返回的Xml转换成DataSet
/// &summary&
/// WebService返回的Xml转换成DataSet
/// &/summary&
/// &param name=&text&&Xml字符&/param&
/// &returns&&/returns&
private DataSet GetDataSet(string text)
XmlTextReader reader = new XmlTextReader(new StringReader(text));
reader.WhitespaceHandling = WhitespaceHandling.N
DataSet ds = new DataSet();
ds.ReadXml(reader);
reader.Close();
ds.Dispose();
#endregion
#region 后台获取ashx返回的数据
/// &summary&
/// 后台获取ashx返回的数据
/// &/summary&
/// &param name=&relativePath&&地址&/param&
/// &param name=&data&&参数&/param&
/// &returns&&/returns&
public static string GetRequestJsonString(string relativePath, string data)
string requestUrl = GetRequestUrl(relativePath, data);
WebRequest request = WebRequest.Create(requestUrl);
request.Method = &GET&;
StreamReader jsonStream = new StreamReader(request.GetResponse().GetResponseStream());
string jsonObject = jsonStream.ReadToEnd();
return jsonO
return string.E
public static string GetRequestUrl(string relativePath, string data)
string absolutePath = HttpContext.Current.Request.Url.AbsoluteU
string hostNameAndPort = HttpContext.Current.Request.Url.A
string applicationDir = HttpContext.Current.Request.ApplicationP
StringBuilder sbRequestUrl = new StringBuilder();
sbRequestUrl.Append(absolutePath.Substring(0, absolutePath.IndexOf(hostNameAndPort)));
sbRequestUrl.Append(hostNameAndPort);
sbRequestUrl.Append(applicationDir);
sbRequestUrl.Append(relativePath);
if (!string.IsNullOrEmpty(data))
sbRequestUrl.Append(&?&);
sbRequestUrl.Append(data);
return sbRequestUrl.ToString();
#endregion
//模拟提交数据给接口,获取返回字符串
protected void Button1_Click(object sender, EventArgs e)
System.Net.WebClient client = new WebClient();
System.Collections.Specialized.NameValueCollection collect = new System.Collections.Specialized.NameValueCollection();
collect.Add(&id&, &11111&);
collect.Add(&name&, &lee&);
Byte[] pageData = client.UploadValues(&http://localhost:86/Ajax/Handler2.ashx&, collect);
string pageHtml = Encoding.UTF8.GetString(pageData);
Response.Write(pageHtml);
}&%@ WebHandler Language=&C#& Class=&Handler2& %&
using System.W
public class Handler2 : IHttpHandler {
public void ProcessRequest (HttpContext context) {
context.Response.ContentType = &text/plain&;
string id = context.Request[&id&];
string name = context.Request[&name&];
string returnStr = string.E
if (!string.IsNullOrEmpty(id)&& !string.IsNullOrEmpty(name))
returnStr = &序号& + id + &,姓名& +
context.Response.Write(returnStr);
context.Response.End();
public bool IsReusable {
}#region 提交Json数据且获取接口返回的数据
/// &summary&
/// 提交Json数据且获取接口返回的数据
/// &/summary&
/// &param name=&url&&网址&/param&
/// &param name=&method&&Get/Post&/param&
/// &param name=&postDataStr&&提交数据{&name&:&zhangsan&,&pwd&:&123456&}&/param&
/// &returns&&/returns&
private string HttpPost(string url, string method, string postDataStr)
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
request.Method =
if (!string.IsNullOrWhiteSpace(postDataStr))
request.ContentType = &application/json&;
byte[] postData = Encoding.UTF8.GetBytes(postDataStr);
request.ContentLength = postData.L
System.IO.Stream outputStream = request.GetRequestStream();
outputStream.Write(postData, 0, postData.Length);
outputStream.Close();
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
Stream myResponseStream = response.GetResponseStream();
StreamReader myStreamReader = new StreamReader(myResponseStream, Encoding.GetEncoding(&utf-8&));
string retString = myStreamReader.ReadToEnd();
myStreamReader.Close();
myResponseStream.Close();
return retS
#endregion
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:1563269次
积分:15574
积分:15574
排名:第601名
原创:265篇
转载:215篇
评论:143条
(3)(5)(7)(1)(12)(31)(12)(10)(4)(2)(7)(38)(2)(1)(1)(1)(1)(7)(12)(7)(3)(4)(6)(6)(5)(13)(6)(4)(9)(6)(14)(6)(17)(6)(6)(5)(5)(18)(6)(19)(9)(19)(18)(41)(16)(22)(27)}

我要回帖

更多关于 adams后处理曲线滤波 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信