最近在处理log日志文件,该文件的纪录是实时动态生成的。(由硬件通过com口传过来的)
我想限制文件的纪录数,比如保留最近的200条记录,不知道如何操作?如果用textsteam和随机文件的替换法(用.tmp)不知道会不会漏纪录?文本格式如下:日期时间加一个16进制数11/28/2003 15:06:34 0E
11/28/2003 15:06:36 01
11/28/2003 15:19:36 0F
11/28/2003 15:20:27 0E
11/28/2003 15:20:30 01
11/28/2003 15:27:12 0F
11/28/2003 15:28:02 0E
11/28/2003 15:28:05 01
11/28/2003 16:21:19 41
11/28/2003 16:21:51 00
11/28/2003 16:36:31 41
11/28/2003 16:36:53 00
11/28/2003 16:39:06 0F
11/28/2003 16:39:22 0E
11/28/2003 16:39:22 01
解决方案 »
- datagrid 下标越界(在线等!!)请大家多帮忙啊!
- excel中能否实现类似sql的查询功能?急,在线等.........
- 需求分析
- 如何将货币的数值显示再文本框?
- wise 安装 有BUG吗?
- 程序在打包的时候提示的错误,如何解决?
- 哪里有安装制作软件可以下载,要有注册码的 送100!!!
- 编译过后的DLL在使用中,找不到DLL的入口点!(引用可以通过,用DECLARE声明就提示错误!),各位同仁,急救!急救!999!解决问题者,我
- 怎样可以获取正在系统运行的进程ID?和程序句柄?高手帮手!
- VB6的数据库打包一定要带MADC_TYP.EXE吗
- 怎么把数据导出导入功能写成程序?
- 寻求vb6的安装文件?
启动的时候统计一下*.log的记录数,记录在记录数变量中,
以后每次加入日志时检查记录数,如果大于200就移除最旧的一条,
如果小于200,每成功加入一条日志,计数加1.
2 将TEMP集合中从TEMP.COUNT-199 到TEMP.COUNT 项元素写入新的文件
请问用什么命令移除最旧的一条?(文本文件)
如果用temp不知道会不会漏纪录?
im coll As New Collection
Dim num As Long
Private Sub Command1_Click()
Dim avg As Double
avg = 0
Dim a(1 To 200) As String
For i = 1 To 200
a(i) = coll.Item(i)
avg = avg + Val(coll.Item(i))
Next
MsgBox "数据:" & Join(a(), ",") & vbCrLf & vbCrLf & "均值:" & avg / 200
End SubPrivate Sub Command2_Click()
num = num + 1
coll.Remove 1
coll.Add num
End SubPrivate Sub Form_Load()
For i = 1 To 200
coll.Add i
Next
num = 200
End Sub