想用winform统计了FriendlyName节点中出现名字的次数,结果过为
吴 四 1
张二一 1
孟 一 2
龚 三 1
xml文件格式如下:<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type='text/xsl' href='ChatRecord.xsl'?>
<Log ChatType="2" Caption="考核【144752】 的对话历史记录" OwnerUid="2662494" Id="45636" Upload="false" ChatRecordIndex="1">
<Message ID="1" SessionID="1" Date="2012-08-08" Time="11:03:59" FromUid="2662494">
<From>
<User FriendlyName="吴 四"/>
</From>
<To>
<User FriendlyName=""/>
</To>
<Text><span style="font-family:宋体;font-size:11pt;font-weight:normal;font-style:normal;text-decoration:none;color:#000000;">??/</span></Text>
</Message>
<Message ID="2" SessionID="1" Date="2012-08-08" Time="11:04:02" FromUid="2662491">
<From>
<User FriendlyName="孟 一"/>
</From>
<To>
<User FriendlyName=""/>
</To>
<Text><span style="font-family:宋体;font-size:11pt;font-weight:normal;font-style:normal;text-decoration:none;color:#000000;"><IMG onclick=javascript:ClickEvent(this); type="0" src="C:\Program Files\imo\i'm office\AppData\Emotion\204.gif" realwidth="0" realheight="0" onload="javascript:if(typeof(ImgOnLoad) == &apos;function&apos;){ImgOnLoad(this);}" ></span></Text>
</Message>
<Message ID="3" SessionID="2" Date="2012-08-08" Time="11:04:19" FromUid="2662480">
<From>
<User FriendlyName="张二一"/>
</From>
<To>
<User FriendlyName=""/>
</To>
<Text><span style="font-family:宋体;font-size:11pt;font-weight:normal;font-style:normal;text-decoration:none;color:#000000;">体验一下效果</span></Text>
</Message>
<Message ID="4" SessionID="1" Date="2012-08-08" Time="11:04:47" FromUid="2662491">
<From>
<User FriendlyName="孟 一"/>
</From>
<To>
<User FriendlyName=""/>
</To>
<Text><span style="font-family:宋体;font-size:11pt;font-weight:normal;font-style:normal;text-decoration:none;color:#000000;">效果很好很强大。。</span></Text>
</Message>
<Message ID="355" SessionID="27" Date="2012-12-25" Time="09:29:49" FromUid="2662486">
<From>
<User FriendlyName="龚 三"/>
</From>
<To>
<User FriendlyName=""/>
</To>
<Text><span style="font-family:宋体;font-size:21pt;font-weight:normal;font-style:normal;text-decoration:none;color:#ff0000;"><IMG onclick=javascript:ClickEvent(this); type="0" src="C:\Program Files\imo\i'm office\AppData\Emotion\120.gif" realwidth="0" realheight="0" onload="javascript:if(typeof(ImgOnLoad) == &apos;function&apos;){ImgOnLoad(this);}" ></span></Text>
</Message>
</Log>
吴 四 1
张二一 1
孟 一 2
龚 三 1
xml文件格式如下:<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type='text/xsl' href='ChatRecord.xsl'?>
<Log ChatType="2" Caption="考核【144752】 的对话历史记录" OwnerUid="2662494" Id="45636" Upload="false" ChatRecordIndex="1">
<Message ID="1" SessionID="1" Date="2012-08-08" Time="11:03:59" FromUid="2662494">
<From>
<User FriendlyName="吴 四"/>
</From>
<To>
<User FriendlyName=""/>
</To>
<Text><span style="font-family:宋体;font-size:11pt;font-weight:normal;font-style:normal;text-decoration:none;color:#000000;">??/</span></Text>
</Message>
<Message ID="2" SessionID="1" Date="2012-08-08" Time="11:04:02" FromUid="2662491">
<From>
<User FriendlyName="孟 一"/>
</From>
<To>
<User FriendlyName=""/>
</To>
<Text><span style="font-family:宋体;font-size:11pt;font-weight:normal;font-style:normal;text-decoration:none;color:#000000;"><IMG onclick=javascript:ClickEvent(this); type="0" src="C:\Program Files\imo\i'm office\AppData\Emotion\204.gif" realwidth="0" realheight="0" onload="javascript:if(typeof(ImgOnLoad) == &apos;function&apos;){ImgOnLoad(this);}" ></span></Text>
</Message>
<Message ID="3" SessionID="2" Date="2012-08-08" Time="11:04:19" FromUid="2662480">
<From>
<User FriendlyName="张二一"/>
</From>
<To>
<User FriendlyName=""/>
</To>
<Text><span style="font-family:宋体;font-size:11pt;font-weight:normal;font-style:normal;text-decoration:none;color:#000000;">体验一下效果</span></Text>
</Message>
<Message ID="4" SessionID="1" Date="2012-08-08" Time="11:04:47" FromUid="2662491">
<From>
<User FriendlyName="孟 一"/>
</From>
<To>
<User FriendlyName=""/>
</To>
<Text><span style="font-family:宋体;font-size:11pt;font-weight:normal;font-style:normal;text-decoration:none;color:#000000;">效果很好很强大。。</span></Text>
</Message>
<Message ID="355" SessionID="27" Date="2012-12-25" Time="09:29:49" FromUid="2662486">
<From>
<User FriendlyName="龚 三"/>
</From>
<To>
<User FriendlyName=""/>
</To>
<Text><span style="font-family:宋体;font-size:21pt;font-weight:normal;font-style:normal;text-decoration:none;color:#ff0000;"><IMG onclick=javascript:ClickEvent(this); type="0" src="C:\Program Files\imo\i'm office\AppData\Emotion\120.gif" realwidth="0" realheight="0" onload="javascript:if(typeof(ImgOnLoad) == &apos;function&apos;){ImgOnLoad(this);}" ></span></Text>
</Message>
</Log>
if (File.Exists(s_FilePath))
{
XElement Xdoc = XElement.Load(s_FilePath);
Dictionary<string, int> test = Xdoc.Descendants("User")
.Select(s => s.Attribute("FriendlyName").Value)
.Where(s => !string.IsNullOrEmpty(s))
.GroupBy(s => s)
.ToDictionary(s => s.Key, s => s.Count());
}
代码如下:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Xml.Linq;
using System.Xml;
using System.Windows.Forms;namespace imo
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
} private void button1_Click(object sender, EventArgs e)
{
OpenFileDialog openFileDialog1 = new OpenFileDialog(); //显示选择文件对话框 openFileDialog1.InitialDirectory = "c:\\"; openFileDialog1.Filter = "xml files (*.xml)|*.xml"; openFileDialog1.FilterIndex = 2; openFileDialog1.RestoreDirectory = true;
//"(*.xls)|*.xls"; if (openFileDialog1.ShowDialog() == DialogResult.OK)
{ this.textBox1.Text = openFileDialog1.FileName; //显示文件路径 }
} private void Form1_Load(object sender, EventArgs e)
{
} private void button2_Click(object sender, EventArgs e)
{
XmlDocument xmlDoc = new XmlDocument(); //xmlDoc.Load(this.textBox1.Text.Trim()); if (File.Exists(this.textBox1.Text.Trim())
{
XElement Xdoc = XElement.Load(this.textBox1.Text.Trim());
Dictionary<string, int> test = Xdoc.Descendants("User")
.Select(s => s.Attribute("FriendlyName").Value)
.Where(s => !string.IsNullOrEmpty(s))
.GroupBy(s => s)
.ToDictionary(s => s.Key, s => s.Count());
}
} private void label1_Click(object sender, EventArgs e)
{ }
}
}请大牛,帮看看红色部分,报错原因
private void button2_Click(object sender, EventArgs e)
{
XmlDocument xmlDoc = new XmlDocument(); //xmlDoc.Load(this.textBox1.Text.Trim());
XElement Xdoc = XElement.Load(this.textBox1.Text.Trim());
Dictionary<string, int> test = xmldoc.Descendants("User")
.Select(s => s.Attribute("FriendlyName").Value)
.Where(s => !string.IsNullOrEmpty(s))
.GroupBy(s => s)
.ToDictionary(s => s.Key, s => s.Count());
}