在vb.net中使用打开的文件并保存文件对话框

时间:2009-09-06 03:12:31

标签: vb.net .net

用户选择带有打开文件对话框的文件后,如何处理此操作?例如,如果用户选择了.txt文件并打开了它,它如何从文件中获取数据?它如何返回用户找到该文件的路径?然后,它如何保存文件?

我知道有一个OpenFileDialog.OpenFile()方法,但我也很确定这不是我想要的。我也尝试过ToObject方法,但我可能会以某种方式搞砸了。

例如,是否有一种快速简便的方法来打开图像?

感谢您的帮助!

顺便说一下,这是在VB.net中。

3 个答案:

答案 0 :(得分:4)

Dim dlg_open As New OpenFileDialog()
If (dlg_open.Show() <> DialogResult.OK) Then Return

'if a textfile, then
Dim content As String() = IO.File.ReadAllLines(dlg_open.FileName)

'if an image, then
Dim img As New Bitmap(dlg_open.FileName)

你应该在处理IO的所有操作周围放置Try ... Catch块,你将无法阻止所有异常。

答案 1 :(得分:3)

以下是一个很好的例子:https://web.archive.org/web/1/http://blogs.techrepublic%2ecom%2ecom/programming-and-development/?p=481

这是一个微不足道的问题,谷歌可以在几秒钟内回答。

答案 2 :(得分:0)

您想要处理FileOk事件:

Private Sub OpenFileDialog1_FileOk(ByVal sender As System.Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles OpenFileDialog1.FileOk
    Dim path As String = OpenFileDialog1.FileName

    If fileIsBitmap Then
        ' say the file is a bitmap image '
        Dim bmp As New Bitmap(path)

        ' rotate the image 90 degrees '
        bmp.RotateFlip(RotateFlipType.Rotate90FlipNone)

        ' save the image '
        bmp.Save(path)

    ElseIf fileIsTextFile Then
        ' or say the file is a text file '
        Dim fs As New IO.FileStream(path, IO.FileMode.Append)
        Dim sr As New IO.StreamWriter(fs)

        ' write a new line at the end of the file '
        sr.WriteLine("This is a new line.")

        ' close the FileStream (this saves the file) '
        sr.Close()
        fs.Close()
    End If
End Sub