从嵌入文本文件的非常特定的位置拉出

时间:2011-09-27 19:03:32

标签: vb.net visual-studio-2010

我完成了程序中的每一段代码,除了一个tid位,如何从文本文件中提取两个数字。我知道如何拉线,我知道如何拉出搜索字符串,但我不能弄清楚这一点来挽救我的生命。

无论如何,这里是我需要从...中自动生成的文本的示例...

............................................... ........................

应用程序内存使用情况(kB): 正常运行时间:6089044实时:6089040

** pid 764中的MEMINFO [com.lookout] **

                native   dalvik    other    total
        size:    27908     8775      N/A    36683
   allocated:     3240     4216      N/A     7456
        free:    24115     4559      N/A    28674
       (Pss):     1454     1142     6524     *9120*
(priv dirty):     1436      628     5588     *7652*

物件            观看次数:0 ViewRoots:0      AppContexts:0活动:0           资产:3 AssetManagers:3    本地绑定器:15个代理绑定器:41 死亡接受者:3  OpenSSL套接字:0

SQL                堆:98 MEMORY_USED:98  PAGECACHE_OVERFLOW:16 MALLOC_SIZE:50

数据库       pgsz dbsz Lookaside(b)Dbname          1 14 120 google_analytics.db

资产分配     zip:/system/app/com.lookout_6.0.1_r8234_Release.apk:/resources.arsc:161K

............................................... ..............................

我需要的两个数字是我放在**中的两个数字(星号通常不在那里)。每次生成此工作表时,这些数字都会有所不同,数字位置可能会有所不同,有些数字可能有4位数,5位数或6位数。

如果有人能对这个问题有所了解,我们将不胜感激

谢谢, 扎克

1 个答案:

答案 0 :(得分:0)

您只需要读取该行的最后一个单词并将其转换为数字。使用String.LastIndexOf查找文件中的最后一个空格“”并从该点开始读取数据。

Dim line as String = "       (Pss):     1454     1142     6524     9120"
Dim value as Integer

If line.IndexOf("(Pss)") > 0 Then
    value = CInt(line.Substring(line.LastIndexOf(" ") + 1))
End If