sun_changdong 发表于 2014-12-19 16:03:28

VB中如何保存自定义的文件(如*.lun)



Private Sub mnuFileSaveAs_Click()
    dlgCommonDialog.DialogTitle = "另保存文件"
    dlgCommonDialog.InitDir = "D:\"
    dlgCommonDialog.Filter = "理论计算文件(*.lun)|*.lun"
    dlgCommonDialog.Flags = &H2000
    dlgCommonDialog.ShowSave
   
End Sub


=====================================================
哪位大侠能给解答一下?
谢谢!!

sunjianmax232 发表于 2014-12-19 16:19:50

本帖最后由 sunjianmax232 于 2014-12-19 16:22 编辑

和扩展名无关,格式可以自定义,写的时候用什么格式,读出的时候也用相同的格式。
我用过的两个最简单的方法如下(写日志用):
1: vb6.0
Dim strDate As String
   
    strDate = Format(Date, "yyyy-mm-dd")
   
    Open "ErrorFile.txt" For Append Access Read Write As #1
    Print #1, "错误日期:" & strDate
    Print #1, "错误模块:" & mvarErrMadol
    Print #1, "错误编号:" & mvarErrNumber
    Print #1, "错误说明:" & mvarErrDes
    Print #1, "错误内容:" & mvarErrInfo & vbCrLf
   
    Close #1

2:vb.net
Dim strFileName As String = Application.StartupPath & "\REC.txt"
      Dim sw As StreamWriter = New StreamWriter(strFileName, True)

      Try
            sw.WriteLine("sql: " & sql)
            sw.Flush()
            sw.WriteLine("err: " & funName)
            sw.Flush()
            sw.WriteLine("fun: " & ErrName)
            sw.Flush()
            sw.WriteLine("now: " & Now.ToString("f"))
            sw.Flush()
            sw.WriteLine(vbCrLf)
            sw.Flush()

            sw.Close()
            sw = Nothing
      Catch ex As Exception
            sw.Close()
            sw = Nothing
      End Try
    End Function

sun_changdong 发表于 2014-12-19 16:21:50

但是点击保存后并没有生成文件呀?
咋回事呢?

sun_changdong 发表于 2014-12-19 16:23:36

是我的代码的问题吗?

sunjianmax232 发表于 2014-12-19 16:27:41

点击保存后写文件的过程需要你自已用代码写啊。哪个控件只是给你一个选择路径及文件名啊。
点保存后,dlgCommonDialog关闭,会返回一个完整的路径及文件名,就是你刚才选择的。

sun_changdong 发表于 2014-12-19 16:34:40

但是并没有生成对应的文件呀?
我并没有找到该文件呀?
还需要自己处理一下吗?

sun_changdong 发表于 2014-12-19 16:49:27

是不是还需要自己处理要保存的数据呀?
不是生成一个文件然后再打开就能得到保存的数据?

sun_changdong 发表于 2014-12-19 16:56:07

sunjianmax232:
能给解答一下吗?
谢谢!

sunjianmax232 发表于 2014-12-19 16:58:12

本帖最后由 sunjianmax232 于 2014-12-19 16:59 编辑

sun_changdong 发表于 2014-12-19 16:49
是不是还需要自己处理要保存的数据呀?
不是生成一个文件然后再打开就能得到保存的数据? ...

当然是需要你自己处理要保存的数据啊,早回答你了啊。
“点击保存后写文件的过程需要你自已用代码写啊。哪个控件只是给你一个选择路径及文件名啊。”

sun_changdong 发表于 2014-12-19 17:09:52

我怎么得到文件所在的路径和文件名呢?

modbus 发表于 2014-12-19 17:33:01

dlgCommonDialog属性中有文件名和路径,根据该路径和文件名,打开文件,然后写数据,然后关闭文件即可。

sun_changdong 发表于 2014-12-19 17:42:42

好!我试试!谢谢了!

sun_changdong 发表于 2014-12-19 17:51:17

modbus 发表于 2014-12-19 17:33
dlgCommonDialog属性中有文件名和路径,根据该路径和文件名,打开文件,然后写数据,然后关闭文件即可。 ...




Private Sub mnuFileSaveAs_Click()
    dlgCommonDialog.DialogTitle = "另保存文件"
    dlgCommonDialog.InitDir = "D:\"
    dlgCommonDialog.Filter = "理论计算文件(*.lun)|*.lun"
    dlgCommonDialog.Flags = &H2000
    dlgCommonDialog.ShowSave
   
End Sub

为什么执行了这段代码却并没有生成lun文件呢?

modbus 发表于 2014-12-19 18:00:28

dlgCommonDialog就没有生成文件这个功能

modbus 发表于 2014-12-19 18:02:29

它只是一个对话框

sun_changdong 发表于 2014-12-19 18:07:05

但是它能记住设置的路径和文件名?
是不是?

sun_changdong 发表于 2014-12-22 10:43:26

已经搞定了!
谢谢!
页: [1]
查看完整版本: VB中如何保存自定义的文件(如*.lun)