2013-07-10 4 views
0

Я хочу создать кнопку в VB.net, которая позволяет мне просматривать мой жесткий диск для указанного файла в блокноте, который я хочу открыть и получить из него, я только попытался используя FileStream и StreamReader, но это не позволит мне вручную выбрать файл блокнота, вместо этого я должен объявить имя файла по умолчанию. Любые образцы кода были бы оценены заранее, я просто нуждаюсь в отправной точке. Я действительно придерживаюсь этого.Открытие блокнота с помощью кнопки в VB.net

Этот код я использую прямо сейчас, но я должен указать правильное имя файла на нем:

 Dim fStream As New System.IO.FileStream("messages.txt", IO.FileMode.Open) 
     Dim sReader As New System.IO.StreamReader(fStream) 
     Dim Index As Integer = 0 
     Do While sReader.Peek >= 0 
      ReDim Preserve sArray(Index) 
      sArray(Index) = sReader.ReadLine 
      Index += 1 
     Loop 
+0

Хочет, чтобы открыть Блокнот, или файл * блокнот * ? Они очень разные, и ваш вопрос неясно, о чем вы говорите. – RoadieRich

ответ

0

Я думаю, что вы можете использовать неправильный подход с FileStream. Вместо этого попробуйте разрешить пользователю выбирать файл, а затем использовать Process.Start для открытия Notepad.

Посмотрите here на примеры при выборе файла. На странице here затем укажите Process.Start.

Я рад предоставить здесь больше образцов кода, но этих двух страниц должно быть достаточно.

+0

Спасибо, что это действительно помогло мне. теперь я могу продолжить работу. –

1

Если я правильно понимаю ваш вопрос, вы хотите, чтобы иметь возможность выбирать, какое Textfile открыть, если так что вы можете попробовать это:

Dim openFileDialog1 As New OpenFileDialog() 
openFileDialog1.InitialDirectory = "c:\" 
openFileDialog1.Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*" 
openFileDialog1.FilterIndex = 2 
openFileDialog1.RestoreDirectory = True 

If openFileDialog1.ShowDialog() = System.Windows.Forms.DialogResult.OK Then 
    Try 
     stream = openFileDialog1.OpenFile() 
     If (stream IsNot Nothing) Then 
      //do your loop here 
     End If 
    Catch Ex As Exception 
     MessageBox.Show(Ex.Message) 
    Finally 
     If (stream IsNot Nothing) Then 
      stream.Close() 
     End If 
    End Try 
End If 
+0

Спасибо, я буду использовать это как один из моих гидов. –