注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

The Bay Of My Heart

记录生活点滴,反映人生百态! 真实,真诚,专业!

 
 
 

日志

 
 
关于我

人生漫漫数十年,年少时刻莫等闲, 年老时来空抱怨,年纪轻轻是本钱, 事在人为奋当先,尔等此生已无憾。

网易考拉推荐

飞信聊天记录导出----保持曾经发过的短信  

2008-10-02 23:21:00|  分类: 电脑技巧 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

 在线导出程序:http://www.qiushuo.net/FetionRecord

飞信是中国移动推出的一款聊天工具,在PC客户端上,聊天记录是不容易导出的。经过研究发现,飞信PC客户端(以后简称客户端)使用的数据库是SQLite,它的数据库文件一般存放在:C:\Documents and Settings\用户名\Application Data\Fetion\708087590\history.dat 中,可以使用程序将其导出。

使用C#导出记录的关键代码如下:

  string sqlE = "";

            if (dtpStartTime.Checked && dtpEndTime.Checked)

            {

                sqlE = " and MessageBody.Time>=$time1 and MessageBody.Time<=$time2";

            }

            else if (dtpStartTime.Checked && !dtpEndTime.Checked)

            {

                sqlE = " and MessageBody.Time>=$time1";

            }

            else if (!dtpStartTime.Checked && dtpEndTime.Checked)

            {

                sqlE = " and MessageBody.Time<=$time2";

            }

            else

            {

                sqlE = "";

            }

            try

            {

                connHis = new SQLiteConnection(string.Format(connString, DataBaseUrl, txtOwnFetionNumber.Text));

                SQLiteDataAdapter sda = new SQLiteDataAdapter();

                DataSet ds = new DataSet("Message");

                connHis.Open();

                string sql = "select MessageBody.SenderName,Message.ReceiverName,MessageBody.Body,MessageBody.Time " +

                    " from MessageBody,Message " +

                    " where MessageBody.ID=Message.MessageID and (" +

                    " Message.ReceiverUri like '%" + FriendFetionNum + "%'  or Message.ReceiverUri like '%" + OwnFetionNumber + "%'" +

                    " or Message.ReceiverUri like '%" + OwnTelephone + "%' or Message.ReceiverUri like '%" + FriendTelephone + "%')" +

                    " and (MessageBody.SenderUri like '%" + FriendFetionNum + "%' or MessageBody.SenderUri like '%" + OwnFetionNumber + "%'" +

                    " or MessageBody.SenderUri like '%" + OwnTelephone + "%' or MessageBody.SenderUri like '%" + FriendTelephone + "%')" +

                    " and (MessageBody.MessageType=1 or MessageBody.MessageType=4)" +

                    sqlE + " order by MessageBody.Time desc";

                sda.SelectCommand = new SQLiteCommand(sql, connHis);

                if (dtpStartTime.Checked && dtpEndTime.Checked)

                {

                    sda.SelectCommand.Parameters.AddWithValue("$time1", dtpStartTime.Value);

                    sda.SelectCommand.Parameters.AddWithValue("$time2", dtpEndTime.Value);

                }

                else if (dtpStartTime.Checked && !dtpEndTime.Checked)

                {

                    sda.SelectCommand.Parameters.AddWithValue("$time1", dtpStartTime.Value);

                }

                else if (!dtpStartTime.Checked && dtpEndTime.Checked)

                {

                    sda.SelectCommand.Parameters.AddWithValue("$time2", dtpEndTime.Value);

                }

                else

                {                   

                }

                sda.Fill(ds, "Msg");

                ds.Tables[0].Columns.Add("tTime");

                ds.Tables[0].Columns.Add("Remark");

                for (int i = 0; i < ds.Tables[0].Rows.Count; i++)

                {

                    ds.Tables[0].Rows[i]["tTime"] = ds.Tables[0].Rows[i]["Time"].ToString();

                    ds.Tables[0].Rows[i]["Remark"] = "飞信";

                }

                ds.Tables[0].Columns.Remove("Time");

                ds.Tables[0].Columns["tTime"].ColumnName = "Time";

                string Xml = ds.GetXml();

                System.IO.File.WriteAllText(txtXMLPath.Text.Trim(), Xml, System.Text.Encoding.UTF8);

                sda.Dispose();

                connHis.Close();

                MessageBox.Show("聊天记录已经成功导出为xml文件,现在您可以将xml导入到网站", "操作成功", MessageBoxButtons.OK,

                    MessageBoxIcon.Information);

我们提供了在线导出程序:http://www.qiushuo.net/FetionRecord。只需分析历史记录文件即可。

 

 

原文摘引自:http://www.lovelytt.cn/blog/showdetail.aspx?blogid=97

  评论这张
 
阅读(1113)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018