在线求指点:JSP输出的特殊XML 转 C# datatable

问题描述

<?xmlversion="1.0"encoding="UTF-8"?>-<root>-<setting><itemname="pageCount">20</item><itemname="pageCountList">5;10;20;50;100</item></setting>-<metadatacategory="grid">-<rowsname="grid1">-<head><columnid="tba_gescod.c_gesnum"hideFlag="false"type="ro"sort="str"width="120">客户代码</column><columnid="tba_gescod.c_gesnam"hideFlag="false"type="ro"sort="str"width="120">客户名称</column><columnid="tba_gescod.c_reg"hideFlag="false"type="ro"sort="str"width="120">所属地区</column><columnid="tba_gescod.c_add"hideFlag="false"type="ro"sort="str"width="120">通信地址</column><columnid="tba_gescod.c_pos"hideFlag="false"type="ro"sort="str"width="120">邮政编码</column><columnid="tba_gescod.c_conmbl"hideFlag="false"type="ro"sort="str"width="120">公司电话</column><columnid="tba_gescod.c_tratel"hideFlag="false"type="ro"sort="str"width="120">传真号码</column><columnid="tba_gescod.c_eml"hideFlag="false"type="ro"sort="str"width="120">电子信箱</column><columnid="tba_gescod.c_setgesusr"hideFlag="false"type="ro"sort="str"width="80">建档人</column><columnid="tba_gescod.c_gestyp"hideFlag="false"type="ro"sort="str"width="120">客户类型</column><columnid="tba_gescod.c_geslev"hideFlag="false"type="ro"sort="str"width="120">客户等级</column><columnid="tba_gescod.c_gessrc"hideFlag="false"type="ro"sort="str"width="120">客户来源</column><columnid="tba_gescod.c_gesind"hideFlag="false"type="ro"sort="str"width="120">客户行业</column><columnid="tba_gescod.c_web"hideFlag="false"type="ro"sort="str"width="120">公司网址</column><columnid="tba_gescod.c_ecopro"hideFlag="false"type="ro"sort="str"width="120">经济性质</column><columnid="tba_gescod.c_bnkacc"hideFlag="false"type="ro"sort="str"width="120">银行帐户</column><columnid="tba_gescod.c_opnbnk"hideFlag="false"type="ro"sort="str"width="120">开户银行</column><columnid="tba_gescod.c_taxnum"hideFlag="false"type="ro"sort="str"width="120">税号</column><columnid="tba_gescod.c_hlpmrk"hideFlag="false"type="ro"sort="str"width="120">助记符</column><columnid="tba_gescod.c_setgesdat"hideFlag="false"type="ro"sort="str"width="120">建档时间</column><columnid="ta_regset.c_regnam"hideFlag="false"type="ro"sort="str"width="120">所属区域</column><columnid="tbr_geslikgoo.c_goo"hideFlag="false"type="ro"sort="str"width="120">感兴趣产品</column><columnid="tba_gesconman.c_connam"hideFlag="false"type="ro"sort="str"width="100">联系人姓名</column><columnid="tba_gesconman.c_condut"hideFlag="false"type="ro"sort="str"width="80">主联系人标志</column><columnid="tba_gesconman.c_condut"hideFlag="false"type="ro"sort="str"width="80">联系人职务</column><columnid="tba_gesconman.c_eml"hideFlag="false"type="ro"sort="str"width="120">联系人E-mail</column><columnid="tba_gesconman.c_othereml"hideFlag="false"type="ro"sort="str"width="120">联系人备用E-mail</column><columnid="tba_gesconman.c_confax"hideFlag="false"type="ro"sort="str"width="80">联系人传真</column><columnid="tba_gesconman.c_offtel"hideFlag="false"type="ro"sort="str"width="80">联系人电话</column><columnid="tba_gesconman.c_conmbl"hideFlag="false"type="ro"sort="str"width="80">联系人手机</column></head>-<rowid="LIGHT">-<cellrowspan="1">-<![CDATA[<ahref="javascript:void(0)"onClick=openModSubWin(encodeURI("../module/a0312_rgt_edit.jsp?formId=toUpd&gesnum=LIGHT&mid=a1ad048ac3cc73373fa2dfec4d1aa8c2"))>LIGHT</a>]]></cell>-<cellrowspan="1">-<![CDATA[<ahref="javascript:void(0)"onClick=openModSubWin(encodeURI("../module/a0312_rgt_edit.jsp?formId=toUpd&gesnum=LIGHT&mid=a1ad048ac3cc73373fa2dfec4d1aa8c2"))>LightHausPhotonicsPteLtd</a>]]></cell><cellrowspan="1"></cell><cellrowspan="1"></cell><cellrowspan="1"/><cellrowspan="1"/><cellrowspan="1"/><cellrowspan="1"/><cellrowspan="1"></cell><cellrowspan="1"></cell><cellrowspan="1"></cell><cellrowspan="1"></cell><cellrowspan="1"/><cellrowspan="1"></cell><cellrowspan="1"/><cellrowspan="1"/><cellrowspan="1"/><cellrowspan="1"/><cellrowspan="1"/><cellrowspan="1"></cell><cellrowspan="1"></cell><cellrowspan="1"/><cell>Terence</cell><cell>Y</cell><cell/><cell></cell><cell/><cell/><cell></cell><cell/></row>-<rowid="NOVA">-<cellrowspan="1">-<![CDATA[<ahref="javascript:void(0)"onClick=openModSubWin(encodeURI("../module/a0312_rgt_edit.jsp?formId=toUpd&gesnum=NOVA&mid=f4eb0d9d078245c581dff1338f749b49"))>NOVA</a>]]></cell>-<cellrowspan="1">-<![CDATA[<ahref="javascript:void(0)"onClick=openModSubWin(encodeURI("../module/a0312_rgt_edit.jsp?formId=toUpd&gesnum=NOVA&mid=f4eb0d9d078245c581dff1338f749b49"))>NaimElectric</a>]]></cell><cellrowspan="1">LB</cell><cellrowspan="1"></cell><cellrowspan="1"/><cellrowspan="1"/><cellrowspan="1"/><cellrowspan="1"/><cellrowspan="1"></cell><cellrowspan="1"></cell><cellrowspan="1"></cell><cellrowspan="1"></cell><cellrowspan="1"/><cellrowspan="1"></cell><cellrowspan="1"/><cellrowspan="1"/><cellrowspan="1"/><cellrowspan="1"/><cellrowspan="1"/><cellrowspan="1">2016-03-2417:22:30.726</cell><cellrowspan="1"></cell><cellrowspan="1"/><cell></cell><cell></cell><cell/><cell></cell><cell/><cell/><cell></cell><cell/></row></rows></metadata>-<setting><itemname="totalcount">2</item></setting></root>

解决方案

解决方案二:
你的xml格式都有问题,这个分明是一个展示出来的grid,而且里面的column的id都是重复的,XElementroot=XElement.Load(path);varrows=root.Element("metadata").Element("rows");DataTabledt=newDataTable();foreach(varcolumninrows.Element("head").Elements("column")){dt.Columns.Add(column.Value);}foreach(varrowinrows.Elements("row")){dt.Rows.Add(row.Elements("cell").Select(c=>c.Value).ToArray());}Console.WriteLine(dt.Rows.Count);

解决方案三:
引用1楼starfd的回复:

你的xml格式都有问题,这个分明是一个展示出来的grid,而且里面的column的id都是重复的,XElementroot=XElement.Load(path);varrows=root.Element("metadata").Element("rows");DataTabledt=newDataTable();foreach(varcolumninrows.Element("head").Elements("column")){dt.Columns.Add(column.Value);}foreach(varrowinrows.Elements("row")){dt.Rows.Add(row.Elements("cell").Select(c=>c.Value).ToArray());}Console.WriteLine(dt.Rows.Count);

感谢大神,这个是JSP文件查询后的结果,显示在网页上的grid。我先试下。
解决方案四:
引用1楼starfd的回复:

你的xml格式都有问题,这个分明是一个展示出来的grid,而且里面的column的id都是重复的,XElementroot=XElement.Load(path);varrows=root.Element("metadata").Element("rows");DataTabledt=newDataTable();foreach(varcolumninrows.Element("head").Elements("column")){dt.Columns.Add(column.Value);}foreach(varrowinrows.Elements("row")){dt.Rows.Add(row.Elements("cell").Select(c=>c.Value).ToArray());}Console.WriteLine(dt.Rows.Count);

为啥行数少了很多呢。
解决方案五:
哦,知道了,分页的原因,爬虫只爬了一页,再次感谢。

时间: 2024-09-29 04:07:44

在线求指点:JSP输出的特殊XML 转 C# datatable的相关文章

在线求教育!怎样根据产生xml的人的文档来编程?

问题描述 跟人合作开发,给传递xml时的部分的产品文档:请求URL:http://host:port/web_xml_interface/user_logon.xml?logonName=UserLogonName&password=UserPassword响应XML: <?xml version="1.0" encoding="GBK" ?> <logon_successsessionId="000000000000000000

java-使用jspsmart.upload组件上传文件总是上传不上,跪求指点

问题描述 使用jspsmart.upload组件上传文件总是上传不上,跪求指点 JSP body区: <% SmartUpload su=new SmartUpload(); su.initialize(pageContext); su.upload(); int num=su.save("/file/", SmartUpload.SAVE_VIRTUAL); out.println(num+"个文件上传成功!!!"); %> 已经把组件的包导进去了 &

char-ORACLE 这语句的错问题,求指点,在线等、、着急ING

问题描述 ORACLE 这语句的错问题,求指点,在线等..着急ING select to_char(hiredate''MM) from (select deptnoMAX(sal) from emp group by deptno having deptno = 10);其中,hiredate为日期字段,sal为工资,deptno为部门号,求大神指点哪里出了错误,在线等,急!!!!!!!!!!! 解决方案 select hdmax(sal) from(select to_char(hireda

logcat-eclipse android开发环境没有log,并输出下面的东西,求指点

问题描述 eclipse android开发环境没有log,并输出下面的东西,求指点 04-23 11:00:59.173: E/MM_OSAL(345): GetTrackChunkType AVI_INVALID_USER_DATA trackID=65535 04-23 11:00:59.173: E/MM_OSAL(345): GetTrackChunkType AVI_INVALID_USER_DATA trackID=65535 04-23 11:00:59.183: E/MM_OS

应用服务器-新手部署服务器在线求大神指点!

问题描述 新手部署服务器在线求大神指点! 公司部署服务器,大概运行200个左右的网站应该怎么配置 用什么服务器? 求大神指点! 解决方案 Windows Server2012 Linux 都可以

求大神指点 ajax data 参数为xml字符串

问题描述 求大神指点 ajax data 参数为xml字符串 $.ajax({ //要用post方式 type: ""Post"" //方法所在页面和方法名 url: ""BWCityList.aspx/UpdateProvince"" data: ""{'xmlDoc':"" + xmlDoc.xml + ""}"" contentType: &

application-无warning无error,但不知为何没有输出的代码,求指点~

问题描述 无warning无error,但不知为何没有输出的代码,求指点~ #include HINSTANCE hInst; HINSTANCE hInstance; MSG msg; char lpszClassName[]="window_class"; char* ShowText; //TCHAR *ShowText; //声明函数原型 LRESULT CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM);//窗口函数 void OnLButto

spring-ApplicationContext.xml找不到,求指点

问题描述 ApplicationContext.xml找不到,求指点 之前还好好的,但是用project下的clean清一下后就提示找不到ApplicationContext.xml了.现在该怎么办啊 解决方案 clean是清除掉eclipse的build生成文件,看下eclipse的problem选项,应该是你clean的时候,先把临时文件清除了,但是重新build的时候发生了错误,可能是这样造成找不到这个文件的. 解决方案二: 那现在该怎么办呢,我把项目从tomcat上delect了之后再添

图片-(可交易,求指点)一个接口,用php发送xml到某个网址,执行后返回xml,求大神指点具体该怎么操作

问题描述 (可交易,求指点)一个接口,用php发送xml到某个网址,执行后返回xml,求大神指点具体该怎么操作 用php提交xml到网站http://tyty.soft200.com:888/,执行并返回xml,求大神指点,谢谢 (可以交易,求指点:加qq914432635) 以下是他们的实例,在自己的软件上的一串xml,具体信息可以参考图片 <?xml version='1.0' encoding='UTF-8'?> --系统根据此值判断是添加还是更新 --系统根据此值判断是添加还是更新 以