2015-09-14 59 views
0

我有一个字符串格式如下最佳途径解析文件

Zone: 1 Events: 3 
Zone: 2 Events: 7 

我解析的文件,下面的代码

Dim strarr() As String 
strarr = Str.Split("/n") 
for i = 0 to 2 
    dim strarrNew() as string 
    strarrNew = strarr(i)Split(" ") 
    use value strarrNew(0) 
     use value strarrNew(1)  
next 

,我直接利用价值,但如果他们是在一个错误字符串输入

Zone:1Events: 3 

空间缺失不是代码将无法正常工作。 什么是解析文件的最佳方式。

+0

你的问题不够清楚,能否请你解释一下是什么您预期的输出? –

+0

对于第一行我的预期输出将是1,3 –

+0

对于第二行我的输出将是2,7 –

回答

0

可以采用这种解决方案只有在所有从该文件中输入相同的格式:

For Each line As String In File.ReadAllLines("F:\sample.txt") 
     Dim strarrNew() As String = line.Split(":"c.ToCharArray()) 
     Dim zone As Integer = CInt(Val(strarrNew(1))) 
     Dim events As Integer = CInt(Val(strarrNew(2))) 
     'Perform your operations 
    Next 
+0

感谢您的帮助 –

+0

没有意义将一个字符转换为char数组,您可以使用'line.Split(“ :“c)'代替。此外'Val'返回一个'Double',因此'CInt'或'Int32.Parse' /'Int32.TryParse'是一个更好的选择 –