热情软件屋

 

使用VB打开文件,为何会少了文件信息


编号:QA004620
建立日期: 2002年4月21日 最后修改日期:2002年4月21日
所属类别:

lei_xf:
    操作系统: windows 2000
    编程工具: vb
    问题: 我在vb中想打开一个文件,就像java中的标准输入流一样,然后存成另一个文件,我打开的是一个word文档,用java打开,然后保存到另一个文件,就可以打开,用vb就不行,格式不对。我试过用java打开是20480个字节,用vb只有19968个,
    Dim fileNum As Long
     Dim fileNum2 As Long
     Dim sContent As String
     Dim fullFileName As String
    
     Dim headInfo As String
    
     fullFileName = tempPath & "\" & m_sourceFile
     fileNum = FreeFile()
    
    
     Open fullFileName For Binary As #fileNum
     'MsgBox LOF(fileNum)
     sContent = Space(LOF(fileNum))
    
     Get fileNum, , sContent
    
     fileNum2 = FreeFile()
     Open "d:\vb\question2.doc" For Output As #fileNum2
     'sContent = Input(LOF(fileNum), fileNum)
     'sContent = StrConv(InputB$(LOF(fileNum), fileNum), vbUnicode)
     ' Input #fileNum, sContent
     Write #fileNum2, sContent
     Close #fileNum
     Close #fileNum2
    
     MsgBox Len(sContent)
    
    为何会少了文件信息,怎样打开才正确呢?
    水平: 中级

回答:

     '请试试将变量sContent定义为
     Dim sContent() As Byte '要将sContent定义Byte变量
     '然后,这样打开文件
     fullFileName = tempPath & "\" & m_sourceFile
     fileNum = FreeFile()
     Open fullFileName For Binary As #fileNum
     ReDim sContent(LOF(fileNum)) As Byte '请注意这行
     Get fileNum, , sContent
    
     '再进行其它操作...
     '记得用来后关闭文件
     Close #fileNum
    

此问题由陈国桥回答。

 
把这个问题推荐给朋友
   
   
您的意见类别
您的名字
您的电子邮件
您的建议(请尽可能详细)
 
 

版权所有 1997-2008 热情软件屋
如果您有任何建议和意见, 请给我发个电子邮件 askpro@china-askpro.com
Web Designed by ZebraStudio