尝试将wav文件的采样数据(data区)提取并转为一种文本格式保存

这篇博客介绍了如何使用C语言将wav文件的采样数据提取出来,并保存为文本格式。主要涉及fseek、ftell、fscanf、fprintf和rewind等文件操作函数,通过示例代码展示了具体实现过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

wav文件的采样数据提取并保存

1、函数名:fseek函数

2、ftell函数

3、fscanf 和 fprintf

4、rewind函数

下面是本次转化的参考代码:

补充知识:

参考文章:


wav文件的采样数据提取并保存

首先参考了一段wav文件转txt的代码,有用到的相关函数有fopen,fread,fseek,fclose,ftell等。其中三个函数前面c语言解析wav文件有讲解,下面讲解一下新遇到的几个函数。

1、函数名:fseek函数

头文件:#include<stdio.h>

功能:把与fp有关的文件位置指针放到一个指定位置。

格式:  int fseek(FILE *stream, long offset, int fromwhere);

范例一:fseek(fp, 0L, SEEK_END);

解释:文件指针定位到文件末尾,偏移0个字节

范例二:  fseek(fp,50L,0);或fseek(fp,50L,SEEK_SET);

解释:其作用是将位置指针移到离文件头50个字节处。

PS:

其中,“位移量”是long型数据,它表示位置指针相对于“起始点”移动的字节数。

      如果位移量是一个正数,表示从“起始点”开始往文件尾方向移动;

      如果位移量是一个负数,则表示从“起始点”开始往文件头方向移动。

     “起始点”不能任意设定,它只能是在stdio.h中定义的三个符号常量之一:

注意:  

      fseek函数的文件指针,应该为已经打开的文件。如果没有打开的文件,那么将会出现错误。

   

起始点 对应的数字 代表的文件位置
SEEK_SET 0 文件开头
SEEK_CUR 1 文件当前位置
SEEK_END 2 文件末尾
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值