首页 新闻 会员 周边

大容量TXT文本查询

1
悬赏园豆:10 [待解决问题]

  我有1-2个G的文本文件需要查询,格式不限,有什么办法让速度快一点吗?求助

cxybk的主页 cxybk | 初学一级 | 园豆:190
提问于:2011-03-25 09:54
< >
分享
所有回答(3)
0

如果你不想导入到数据库中,可以试试这个

http://www.cnblogs.com/downmoon/archive/2009/09/02/1558409.html

邀月 | 园豆:25475 (高人七级) | 2011-03-25 11:26
用C#怎么做啊!C++我不很懂!是我现在是用流一行一行读的!但是电脑内存耗费很大。能有什么好的办法吗!
支持(0) 反对(0) cxybk | 园豆:190 (初学一级) | 2011-04-07 12:39
0

        /// <summary>        /// 读取文件内容        /// </summary>        /// <param name="htmlPath"></param>        /// <returns></returns>        public List<IISLog_Status> ReadLog(string logPath, int serviceID, string logfileName)        {            List<IISLog_Status> listAnalysisLog = new List<IISLog_Status>();            if (File.Exists(logPath))            {                  StreamReader objReader = new StreamReader(logPath);                string sLine = "";                while (sLine != null)                {                    sLine = objReader.ReadLine();                    if (sLine != null)                    {                        if (logStatus(sLine))                        {                            try                            {                                listAnalysisLog = AnalysisLog(listAnalysisLog, sLine, serviceID, logfileName);                            }                            catch(Exception ex)                            {                                AddLog.AddMsgLog(AddLog.LogType.Error, "日志文件处理错误!", ex.Message, ex.StackTrace.ToString());                            }                        }                    }                }                objReader.Close();            }            return listAnalysisLog;        }

yuejianjun | 园豆:20 (初学一级) | 2011-04-07 14:58
我也是用这个方法做的,就是占用的内存很大,电脑就很卡,每次读取一行,根据判断获取符合条件的结果,有没有什么办法减少内存的占用呢!求解,谢谢!
支持(0) 反对(0) cxybk | 园豆:190 (初学一级) | 2011-04-07 15:12
0

这种东西最好能建立对应索引,否则怎么查都很慢.

醉卧天南 | 园豆:369 (菜鸟二级) | 2011-04-19 11:33
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册