用Binary方式打开,使用Put写入文件

解决方案 »

  1.   

    PS:搂主 1 star 啊
      

  2.   

    用2进制方式打开文件
    写文件前用seek函数将文件指针定到文件尾
    然后开始写
      

  3.   

    'Add the Use of Microsoft Scripting Runtime
    'Yse FSO
    Private Sub Form_Load()Dim fso As FileSystemObject
    Dim fl As TextStream
    Dim Text(2) As String
    Text(0) = "abcdefg"
    Text(1) = "bedaff"
    Text(2) = "dfdsfewf"
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set fl = fso.OpenTextFile(App.Path & "\sample.txt", ForAppending, True)
    For i = 0 To 2
    fl.Write (Text(i))
    Next i
    End Sub
      

  4.   

    看错了,以为是合在一起,不分行!!
    上面输出的是:“abcdefgbedaffdfdsfewfabcdefgbedaffdfdsfewf”
    改成这样!!
    WriteLine 写行
    Write     不换行
    改成这样:'Add the Use of Microsoft Scripting Runtime
    'Use FSO
    Private Sub Form_Load()Dim fso As FileSystemObject
    Dim fl As TextStream
    Dim Text(2) As String
    Text(0) = "abcdefg"
    Text(1) = "bedaff"
    Text(2) = "dfdsfewf"
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set fl = fso.OpenTextFile(App.Path & "\sample.txt", ForAppending, True)
    For i = 0 To 1
    fl.WriteLine (Text(i))
    Next i
    fl.Write (Text(2))
    fl.WriteLine ("1234")
    End Sub输出是这样:
    abcdefg
    bedaff
    dfdsfewf1234
      

  5.   

    to  gump2000(阿甘) :
    问题是Binary方式的话,不能进行追加操作啊!??请问如何解决??to  w18ily(再回首,西门吹沙) :
    你是对的,谢谢!不过如果不使用FSO如何实现?
      

  6.   

    怎么不行呢?
    可以直接在Put里定位
    或者用Seek
      

  7.   

    to: gump2000(阿甘) 
    请问如何定位?定多少位如何计算?
    请给出相关代码,谢谢!
      

  8.   

    Put #1,FileLen()+1,sdfsda
    =-=-=-=-=-=-=-=-=-=-=-=-=
    风姿文本游戏控件
    http://www14.brinkster.com/inshua
    http://gt.onlinedown.net/windpose.htm
      

  9.   

    Option ExplicitDim FileNo As Integer
    Dim lngTempPos As LongPrivate Sub Command1_Click()
        On Error Resume Next
        Dim lngLength As Long
        Dim sName As String, RecordNumber As Integer    ' 声明变量。
        
        FileNo = FreeFile()
        sName = "赵sanpo"
        Open App.Path & "\Test.txt" For Binary As FileNo
            Put #FileNo, lngTempPos, sName  ' 将记录写入文件中。
            lngTempPos = Seek(FileNo)
        Close #FileNo   ' 关闭文件。
    End SubPrivate Sub Form_Load()
        lngTempPos = 1
    End Sub
      

  10.   

    上面代码,只要你不关闭程序,就可以追加,(当然不要超出Long的范围)
      

  11.   

    Why?这么弱智的问题居然……最后加个“;”号(英文分号)就行
    Print #FileNo, "dfdsfewf";
      

  12.   

    zyl910(910:分儿,我来了!) ,高手就是高手!佩服!Print #FileNo, "dfdsfewf"; 的确可以。
    MSDN上居然没有!