如题,想实现在VB中读入数据文件名,并将文件名传给fortran程序,在fortran程序中打开数据文件,同时完成数据处理。Fortran源程序已经有了,现在想用vb做个简单的可视化外壳,不过vb基本入门级,求高手给些指点,或者告知哪本书籍上会有相关内容,多谢!另,尝试了一下谢敏、陈伟、陈守伦发的文章“fortran与vb的混合编程”里的例子,貌似缺了好多东西,没调通,郁闷ing.

解决方案 »

  1.   

    现求第一步:如何从vb中读数据文件名,并将文件名传给fortran程序
    有步骤或简单例子最好,谢谢!
      

  2.   

    fortran 不知道是什么,但是只要是 windows 程序,都需要用到 windows 的开发理念,
    比如 windows 程序的接口技术,如 API、COM、ActiveX 等基本接口,或者用通讯技术,
    如:命名管道、网络、系统消息等,对于 VB 与别的开发语言接口来说,VB 可以调用API接口(但不能开发),
    可以开发或调用 COM 或 ActiveX 接口,即使你的开发语言不支持这些接口的开发或调用(我想不可能),
    但也可以通过命名管道、网络、系统消息等通讯方式接收或发送数据给VB,这样一来就是你说的基础的
    读数据文件名问题了,简单的方法可以用 open 语句,用二进制方式读写文件内容,然后把字节流数据
    通过接口或数据通道传输给你的程序,因为不知道你的具体情况,只做个读写文件的范例给你看:Dim fs        As Integer, _
        fsize     As Long, _
        fbuffer() As Byte, _
        filename  As String
    filename = "C:\你的文件.jpg"      '// 设置你要读写的文件路径
    redim fbuffer(filelen(filename)-1)'// 分配读取文件的缓冲去大小为指定文件的大小
    fs = FreeFile                     '// 取得一个可用的文件句柄
    open filename for binary as #fs   '// 用二进制方式打开 filename 文件,如果文件不存在就创建一个
    get #fs,1,fbuffer                 '// 从文件的第一个字节开始读数据到缓冲区
    close #fs                         '// 完成操作后关闭文件'// 这个时候 "C:\你的文件.jpg" 文件的全部数据已经全部读到了 fbuffer 变量中了,
    '// 可以尝试再把这个数据写到另外一个文件看看
    filename = "C:\你的文件2.jpg"      '// 设置你要读写的文件路径
    fs = FreeFile                     '// 取得一个可用的文件句柄
    open filename for binary as #fs   '// 用二进制方式打开 filename 文件,如果文件不存在就创建一个
    put #fs,1,fbuffer                 '// 从文件的第一个字节处开始写入 fbuffer 的数据内容
    close #fs                         '// 完成操作后关闭文件'// 注意 fbuffer 的定义是 fbuffer() As Byte,表示是字节型,而且是数组模式,也就是一串的
    '// 字节流,在API接口中,可以这样 byref fbuffer(0) 传递这个字节流的地址指针,也就是 C 语言
    '// 理解的 unsigned char * 类型的数据
      

  3.   

    thanks for share, i will try it asap.
      

  4.   

    thanks for share, i will test it asap....