怎么把视频文件(avi,mpeg)转换成二进制文件?
我刚学VB不久,想用VB实现以下功能:把视频文件(AVI,MPEG等)转换成二进制流并且上传到远程数据库保存,请问高手们该怎么做?教教小弟吧,如果有源代码参考下更好。我的邮箱是qiuhui8507@163.com
[解决办法]
以二进制方式打开文件,然读进内存变量,再把这个变量存入数据库
Open "a.avi" For Binary Access Read Lock Read As #1
Get #1,,VarString
[解决办法]
本来就是二进制的,还转什么?
[解决办法]
文件不都是二进制吗?
[解决办法]
给你段代码 参考一下
'---------------------------图片的保存---------------------------------
Public Sub SavePic(mes_id As String, ByRef img As StdPicture)
Dim objRecordsetL As ADODB.Recordset
Set objRecordsetL = New ADODB.Recordset
Dim selectsql As String
Dim stm As ADODB.Stream
Set stm = New ADODB.Stream
selectsql = "select memo_pic from ly_message where mes_id='" & mes_id & "'"
objRecordsetL.Open selectsql, strConnectionString, adOpenKeyset, adLockOptimistic
stm.Type = adTypeBinary
stm.Open
'存入图片
SavePicture img, App.Path & "\pic.bmp" '保存图片
stm.LoadFromFile App.Path & "\pic.bmp"
objRecordsetL!MEMO_PIC = stm.Read
objRecordsetL.Update
objRecordsetL.Close
stm.Close
End Sub
'-----------------------声音的保存----------------------------------------
Public Sub SaveVoice(mes_id As String)
Dim objRecordsetL As ADODB.Recordset
Set objRecordsetL = New ADODB.Recordset
Dim selectsql As String
Dim stm As ADODB.Stream
Set stm = New ADODB.Stream
selectsql = "select memo_voice from ly_message where mes_id='" & mes_id & "'"
objRecordsetL.Open selectsql, strConnectionString, adOpenKeyset, adLockOptimistic
stm.Type = adTypeBinary
stm.Open
'存入声音
stm.LoadFromFile App.Path & "\make.wav"
objRecordsetL!MEMO_VOICE = stm.Read
objRecordsetL.Update
objRecordsetL.Close
stm.Close
End Sub
'------------------------------------------------------图片的读入----------------------
Public Function ReadPic(mes_id As String, pic As PictureBox) As Boolean
Dim objRecordsetL As ADODB.Recordset
Set objRecordsetL = New ADODB.Recordset
Dim selectsql As String
Dim stm As ADODB.Stream
Set stm = New ADODB.Stream
selectsql = "select memo_pic from ly_message where mes_id='" & mes_id & "'"
objRecordsetL.Open selectsql, strConnectionString, adOpenKeyset, adLockOptimistic
stm.Type = adTypeBinary
stm.Open
'读取图片
If Not IsNull(objRecordsetL.Fields("memo_pic")) Then
stm.Write objRecordsetL!MEMO_PIC
stm.SaveToFile App.Path & "\pic.bmp", adSaveCreateOverWrite
pic = LoadPicture(App.Path & "\pic.bmp")
objRecordsetL.Update
ReadPic = True
Else
ReadPic = False
End If
objRecordsetL.Close
stm.Close
End Function
'----------------------声音的读入-----------------------------------------------
Public Function ReadVoice(mes_id As String) As Boolean
Dim objRecordsetL As ADODB.Recordset
Set objRecordsetL = New ADODB.Recordset
Dim selectsql As String
Dim stm As ADODB.Stream
Set stm = New ADODB.Stream
selectsql = "select memo_voice from ly_message where mes_id='" & mes_id & "'"
objRecordsetL.Open selectsql, strConnectionString, adOpenKeyset, adLockOptimistic
stm.Type = adTypeBinary
stm.Open
'读取声音
If Not IsNull(objRecordsetL.Fields("memo_voice")) Then
stm.Write objRecordsetL!MEMO_VOICE
stm.SaveToFile App.Path & "\make.wav", adSaveCreateOverWrite
ishavevioce = True
ReadVoice = True
Else
ReadVoice = False
End If
objRecordsetL.Update
objRecordsetL.Close
stm.Close
End Function