【求助】一个WAV文件头的问题,有空的朋友帮忙写个小程序,谢谢

avenger 2005-04-07 07:36:17
一个保存公司电话录音的硬盘误格式化,通过恢复软件,找回了一部分数据。皆为wav格式,不过头文件好像已经被损坏了,不能播放。

经测试把目前文件的前三行(用UltraEdit-32打开后)用WAV头部覆盖后可以正常播放。见附图所示,不过目前文件有上万个,不可能一个一个去换。

希望哪个朋友有空能帮个忙写个批处理,能够自动遍历当前目录下的所有wav文件,并把头部三行替换成附件中的头文件就行了。

万分感谢。

附件链接:http://www.d4e.org/attachment.php?attachmentid=88041
...全文
76 点赞 收藏 10
写回复
10 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
avenger 2005-04-10
感谢DRL的billholt帮忙,问题已完美解决,修复程序已经上传到 www.phpe.net/WaveRepair.zip 两天后删除,结贴,感谢所有关注的朋友。
回复
avenger 2005-04-09
麻烦楼上的给编译成exe文件可以吗?我没有编译器,sorry,谢谢。a@phpe.net
回复
avenger 2005-04-09
谢谢
回复
homezj 2005-04-09
写错了一句
Open Text2.Text & "\" & s For Binary As #Fn
换成
Open path & "\" & s For Binary As #Fn
回复
homezj 2005-04-09
'这么简单的事还要人帮呀?不就是每个文件前的64个字节吗?用下面代码,一次搞定!

使用前请自己备份,错了别怪我就行了!

Option Explicit
Private UserCancel As Boolean
Private Sub Form_Load()
Command1.Caption = "开始"
Command2.Caption = "停止"
Text1.Text = "模板文件名"
Text2.Text = "查找文件夹"
End Sub
Private Sub Command2_Click()
UserCancel = True
End Sub
Private Sub Command1_Click()
Dim hd(63) As Byte, Fn As Long, path As String, s As String
If Dir(Text1.Text) = "" Then Exit Sub
Command1.Enabled = False
UserCancel = False
Fn = FreeFile
Open Text1.Text For Binary As #Fn
Get #Fn, , hd
Close #1
path = Text2.Text
If Right$(path, 1) = "\" Then path = Left$(path, Len(path) - 1)
s = Dir(path & "\*.wav")
Do While s <> ""
Open Text2.Text & "\" & s For Binary As #Fn
Put #Fn, , hd
Close #Fn
DoEvents
If UserCancel Then Exit Do
s = Dir()
Loop
Command1.Enabled = True
End Sub
回复
avenger 2005-04-09
已上传到 http://www.phpe.net/WAV.rar 谢谢帮忙
回复
cly2004 2005-04-09
clyily@126.com发过来吧
回复
cly2004 2005-04-09
http://www.d4e.org/attachment.php?attachmentid=88041
你的这个连接进不去啊,得不到东西,要不然试一下。
回复
wuxudong82 2005-04-09
帮顶! ^_^
回复
flyingZFX 2005-04-08
没空,不过,还是帮顶! ^_^
回复
发帖
非技术类
创建于2007-09-28

721

社区成员

VB 版八卦、闲侃,联络感情地盘,禁广告帖、作业帖
申请成为版主
帖子事件
创建了帖子
2005-04-07 07:36
社区公告
暂无公告