สอบถามเรื่อง vb.net อ่านค่าจาก textfile โดยไม่ให้เกิน Array
Posted: Sun Nov 01, 2015 11:34 am
สวัสดีครับอาจารย์
ผมเขียนโค๊ดให้โปรแกรมอ่านค่าจาก textfile โดยข้อมูลข้างในจะเป็น IP Address ตามด้วยข้อมูลของ IP แต่ละตัว
เช่น 192.168.1.1 aaaaaaaaaaaaaaa
192.168.1.2 bbbbbbbbbbbbbb
การทำงานของโปรแกรมคือ เมื่อเขียน IP ที่ต้องการค้นหาลงใน textbox แล้วกดปุ่ม search คือ button1
โปรแกรมจะทำการเปรียบเทียบว่า ถ้าไป IP เหมือนกันจะนำมาแสดงใน listbox1 (ทางด้านซ้าย)
ปัญหาก็คือ ถ้าผมไม่ใส่คำสั่ง Try มันจะขึ้น error ว่า ไม่อยู่ในขอบเขต array นั่นหมายความว่า มันอ่านทะลุข้อมูลที่มีใน textfile
อยากทราบว่าจะแก้ปัญหานี้อย่างไรดีครับ ?
รบกวนด้วยครับ
ผมเขียนโค๊ดให้โปรแกรมอ่านค่าจาก textfile โดยข้อมูลข้างในจะเป็น IP Address ตามด้วยข้อมูลของ IP แต่ละตัว
เช่น 192.168.1.1 aaaaaaaaaaaaaaa
192.168.1.2 bbbbbbbbbbbbbb
การทำงานของโปรแกรมคือ เมื่อเขียน IP ที่ต้องการค้นหาลงใน textbox แล้วกดปุ่ม search คือ button1
โปรแกรมจะทำการเปรียบเทียบว่า ถ้าไป IP เหมือนกันจะนำมาแสดงใน listbox1 (ทางด้านซ้าย)
Code: Select all
Imports System.IO
Public Class Form1
Dim DataConfig() As String
Dim DataArray() As String
Dim IP As String
Dim Ipcompare As String
Dim i As Integer = 0
Dim ii As Integer = 0
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
TextBox1.Clear()
ListBox1.Items.Clear()
ListBox2.Items.Clear()
Timer1.Stop()
Button1.Visible = True
End Sub
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Dim filename As String = "D:\dataparn.txt"
Dim F As StreamReader = New StreamReader(filename)
DataConfig = F.ReadLine.Split(",")
F.Close()
End Sub
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Timer1.Start()
Ipcompare = TextBox1.Text
ListBox1.Items.Clear()
End Sub
Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
Try
Dim F As StreamReader = New StreamReader(DataConfig(1))
Dim Read() As String = Split(F.ReadToEnd, vbNewLine)
Dim Read1() As String = Read(i).Split(vbTab)
ListBox2.Items.Add(Read(i))
IP = Read1(0)
If Ipcompare = IP Then
ListBox1.Items.Add(Read(i))
End If
i = i + 1
Button1.Visible = True
Catch ex As Exception
End Try
End Sub
End Class
อยากทราบว่าจะแก้ปัญหานี้อย่างไรดีครับ ?
รบกวนด้วยครับ