保存按钮不保存在.txt文件Visual Basic .NET中

时间:2015-03-06 17:48:19

标签: .net visual-studio-2013

Private Sub SaveButton_Click(sender As Object, e As EventArgs) Handles SaveButton.Click
    Dim strLineFromSave As String
              'This method below returns a String of 81 characters long.'
    strLineFromSave = grid.udsSave()
    SaveFileDialog1.Filter = "TXT Files (*.txt*)|*.txt*"
    If SaveFileDialog1.ShowDialog() = Windows.Forms.DialogResult.OK Then
        Dim sw As System.IO.StreamWriter = New System.IO.StreamWriter(SaveFileDialog1.FileName)
            'For loop to write a line every 9 characters, so you get a 9x9 grid.'
        For intCounter As Integer = 0 To (strLineFromSave.Length - 1) Step 9
            Dim strTemp = strLineFromSave.Substring(intCounter, 9)
            sw.WriteLine(strTemp)
        Next
        sw.Close()
    End If
End Sub

上面的代码用于将我的数独游戏保存到.txt文件中。

我遇到的问题是,每当我点击保存按钮时,一切正常,直到它没有将文件保存为.txt文件为止。它只是将其保存为“文件”。

有人知道这是从哪里来的吗?我该如何解决这个问题?

注意: 我尝试过将SaveFileDialog1.filter设置为txt文件,但这没有帮助。

提前致谢。

1 个答案:

答案 0 :(得分:4)

过滤器对正在保存的文件类型没有任何影响,只是对话框中出现的文件(类似于打开)。实际的扩展" .txt"首次创建时需要与文件一起保存。这就是Windows知道该文件是文本文件的方式。否则,如果您将其保存为" MySudoku"它不包含文件扩展名。

https://msdn.microsoft.com/en-us/library/system.windows.forms.filedialog.defaultext(v=vs.110).aspx

尝试使用defaultext属性。

SaveFileDialog1.DefaultExt = "txt"