var sql = "select name from sqlite_master where type='table'";
var tables = [];
db.each(sql, function(err, row) {
if(err) throw err;
if(row.name.indexOf('Chat_')>-1){
tables.push(row.name);
}
}, function () {
//最后执行完的操作
});
2.从Friend表中提取user,计算对应的username的md5,
var sql = "select UsrName,NickName from Friend";
var objs = [];
db.each(sql, function(err, row) {
if(err) throw err;
var md5 = 'Chat_'+utility.md5(row.UsrName);
if(_.indexOf(tables,md5)>=0){
var obj = {
ChatTable:md5,
UsrName:row.UsrName,
NickName:row.NickName
};
objs.push(obj);
}
}, function () {
//最后执行完的操作,可以把objs存成文件。类似下图所示
});
连接sqilite数据库 npm install sqlite3 --save var sqlite3 = require(‘sqlite3’).verbose(); var db = new sqlite3.Database(’./MM.sqlite’);
参考:http://www.programgo.com/article/15012822690/
1.提出所有"chat_"开头的表名
2.从Friend表中提取user,计算对应的username的md5,
3.现在已经把聊天对应的表和名称找到了,我做到这里了,后面没有做,思路是分析每个表中的消息记录 可以参考这个分析。消息对应的类型,以及静态文件存放位置:http://www.cnblogs.com/cxun/p/4338643.html 你可以把解析出来的消息存成文件,最后打包通过request上传到服务器上去