高分求解:如何操作指定路径下的文件
编写一个程序,对于一个给定的文本文件(文件名为c:/my/a.txt),程序在屏幕输出该文本文件的最后5行,如果文件中不足5行,则输出整个文件。 问题点数:100、回复次数:5Top
1 楼yinweihong()回复于 2006-01-06 11:41:16 得分 10
在屏幕输出?先数出文件一共有多少行
建议用 FSO,readline skip等方法
比较简单,自己写代码
Top
2 楼zou19820704(天下英雄)回复于 2006-01-06 11:42:21 得分 45
Option Explicit
Private Sub Command1_Click()
Dim a() As String
Dim i As Integer
Dim j As Integer
Dim IndexA As Integer
i = 0
Open "c:/my/a.txt" For Input As #1
Do While Not EOF(1)
ReDim Preserve a(i) As String
Line Input #1, a(i)
i = i + 1
Loop
Close #1
IndexA = UBound(a)
If IndexA > 4 Then
For j = IndexA - 5 To IndexA
List1.AddItem a(j)
Else
For j = 0 To IndexA
List1.AddItem a(j)
Next
End If
End Sub
Top
3 楼sema(sema)回复于 2006-01-06 11:49:31 得分 0
感谢两位的迅速响应, zou19820704(国际海员)的代码只涉及逻辑, 请问在屏幕输出部分的代码如何编写?Top
4 楼faysky2(出来混,迟早是要还嘀)回复于 2006-01-06 11:51:47 得分 45
当作数据库来提取
--------------------------
需要引用ADO
Private Sub Command1_Click()
Dim cn As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim i As Integer
cn.Open "Driver={Microsoft Text Driver (*.txt; *.csv)};Dbq=C:\;Extensions=asc,csv,tab,txt;"
rs.CursorLocation = adUseClient
rs.Open "select * from 11.txt", cn, 1, 1
'下面打印最后5条记录,或打印全部记录
If rs.RecordCount >= 5 Then
rs.AbsolutePosition = rs.RecordCount - 4
End If
While Not rs.EOF
Debug.Print rs(0)
rs.MoveNext
Wend
End SubTop
5 楼sema(sema)回复于 2006-01-06 12:01:12 得分 0
感谢 faysky2,请问屏幕输出部分。。。如何。。。谢拉谢拉Top




