2016-03-15 2 views
1

Я нажимаю кнопку (с этим кодом), чтобы загрузить строки из файла testexam в список «lstHere». Testexam будет обновлен другой программой, и я хочу, чтобы код копировал новые строки «testexam» в нижней части «lstHere». Во-вторых, выбранный индекс должен перейти к первому элементу нового списка. Любая помощь будет оценена.VB.net обновляет список элементов из файла

Private Sub 
    Dim MReader As New StreamReader("C:\Users\Sparrow\testexam.txt") 
    Dim this1 As String = "" 
    Dim thisline(6000) As String 


    Dim i As Integer = 0 

    Do Until MReader.Peek = -1 
     this1= MReader.ReadLine 

     thisline(i)= this1 

     lstHere.Items.Add(thisline(i)) 

     'go to the next line. 
     i = i + 1 

    Loop 
End Sub 
+0

Почему вы не используете 'File.ReadAllLines ("C: \ Users \ Sparrow \ testexam.txt")', чтобы получить полный массив с одной строкой? –

ответ

1

Я не знаю, как вы пытаетесь реализовать это, но работает с разными кнопками.

Button1:

'Add the selected item to the top 
ListBox1.Items.Insert(0, ListBox1.SelectedIndex) 

Button2:

'Delete duplicates 
Dim items(ListBox1.Items.Count - 1) As Object 
ListBox1.Items.CopyTo(items, 0) 
ListBox1.Items.Clear() 
ListBox1.Items.AddRange(items.AsEnumerable().Distinct().ToArray()) 
+0

Спасибо, noidea и @Tim Schmelter. Я попытался, но lstHere.items.Addrange (строки), но он добавляет все строки в обновленном файле. Таким образом, список будет иметь дубликаты строки (из старого файла и дубликатов из обновления). Я хочу, чтобы новые строки, скопированные при этом щелчке, не существовали во время последнего чтения файла. Во-вторых, выбранный индекс должен быть первым элементом этих новых строк. Спасибо. – MordC

+0

новый товар! он работает отлично, но вам нужно предотвратить не выбранные предметы и прочее. Кстати, если это подходит, отметьте как ответ. Удачи – noidea

+0

Прежде чем я нажму эту новую кнопку, чтобы вставить новые (обновленные) строки, в списке уже есть несколько элементов списка (чтение из файла testexam). Я хочу добавить эти новые строки к кнопке списка, чтобы каждая обновленная строка файла была частью строк, добавленных в список. Что следует исключить, это строки, которые уже были скопированы. Например, если перед обновлением файла я скопировал строки AB, CD, EF и GH, и после 60 секунд новые строки (IJ, AB, EF, DG) были добавлены в файл, этот новый код или кнопка, которые мне нужны, должны копировать линии IJ, AB, EF & DG и добавьте в список. Спасибо. – MordC

Смежные вопросы