C++
ifstream inFileTest(inFileName,ios::in|ios::binary);
ofstream outFileTest(outFileName,ios::out|ios::binary);
inFileName是输入的文件地址
/usr/doucement/in.pcm
outFileName是输出的文件地址
/usr/doucement/out.pcm
其中in
\ out
分别代表读取文件
、写入文件
读取文件
inFileTest.read((char *)inData[0], inLinesize)
第一个参数需要填入你需要读取内容到哪个缓冲区
第二个参数是读取文件的大小
如果需要知道你这一次read
的操作读取了多长内容,可以使用gcount
int count = inFileTest.read((char *)inData[0], inLinesize).gcount()
写入文件
outFileTest.write((char *)outData[0], ret * outBytesPerSampel);
第一个参数需要填入你需要写入内容到哪个缓冲区
第二个参数是写多大的文件内容
C
FILE *inFile = fopen(inFileName, "r");
FILE *outFile = fopen(outFileName, "w");
inFileName是输入的文件地址
/usr/doucement/in.pcm
outFileName是输出的文件地址
/usr/doucement/out.pcm
其中r
\ w
分别代表读取文件
、写入文件
读取文件
fread(*inData, sizeof(uint8_t), inLinesize, inFile))
第一个参数是你需要读取内容到哪个缓冲区
第二个参数是该缓冲区类型的大小
第三个参数是你需要读取多大的内容
第四个参数是该文件的句柄 FILE *inFile
= fopen(inFileName, "r");
写入文件
fwrite(*outData, outBytesPerSampel, ret, outFile);
第一个参数是你需要输出的缓冲区
第二个参数是写入多少内容到缓冲区
第三个参数是有多少个需要写入缓冲区的样本
第四个参数是该文件的句柄FILE *outFile
= fopen(outFileName, "w");
写入文件也可以这么写
fwrite(*outData, outBytesPerSampel * ret, 1, outFile);
代表一次写入outBytesPerSampel * ret这么大文件内容到缓冲区
用完记得关闭文件
fclose(inFile);
fclose(outFile);
inFileTest.close();
outFileTest.close();
网友评论