vb.net - 读取最后 2 行文本文件 VB.Net Win Forms
问题描述
通过单击按钮,我尝试读取文本文件,然后仅将最后两行输出到标签中。文本文件中的数据定期更改,但格式始终相同。
这是文本文件中内容的示例。
1393
00:23:12,000 --> 00:23:13,000
2020/08/12 12:43:47
+DMR DCC=4
插槽 1 TG=9003 RID=69
最后两行是我有兴趣得到的,在上面的例子中是
+DMR DCC=4
Slot 1 TG=9003 RID=69
这是我目前所拥有的,这似乎工作但我只是觉得它有点乱并想知道是否有人有任何其他建议。
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Label1.text= ReadLog()
End Sub
Public Function ReadLog() As String
Dim lines() As String = IO.File.ReadAllLines("C:\MyApp\log.txt")
If lines.Length <= 4 Then Return String.Join(Environment.NewLine, lines)
Dim lines4(3) As String
Array.Copy(lines, lines.Length - 3, lines4, 0, 3)
Return String.Join(Environment.NewLine, lines4)
End Function
解决方案
您说您想要最后两行,但您拥有的代码表明您想要最后四行。无论如何,lineCount
在下面的代码中设置为适当的值。
Dim lines = File.ReadAllLines(filePath)
Dim lastLines = lines.Skip(Math.Max(0, lines.Length - lineCount))
Dim text = String.Join(Environment.NewLine, lastLines)
推荐阅读
- r - R中xaringan幻灯片中的表格问题
- javascript - 如何通过 JavaScript / jQuery 获取和存储表中特定行的值
- reactjs - Reactivesearch - 日期时间范围选择器
- javascript - ReactNativeWebView 的注入 JavaScript 属性中的 Queryselector
- list - 用于 MobileNet 网络的交叉验证(手动)的列表到字符串转换
- java - java-hadoop 使用 virtualbox -- 无输出
- java - gradle如何管理非相关项目中的依赖版本
- html - 即使浏览器支持,字体变体设置也不起作用
- javascript - Y 轴无法在 Chartjs 上正确显示
- c++ - 在 C++ 中的 Visual Studio 中创建简单的类实例时出错。初学者