[英]Reading RAW audio file
我是C ++的初學者,我有一個學校項目暗示要分析音頻文件,但無法讀取該文件,在該示例中,程序始終從文件中讀取第一個值
#include <iostream>
#include<fstream>
using namespace std;
int main()
{
ifstream c;
c.open("cv.RAW");
int b;
while(1)
{
c>>b;
cout<<b<<" ";
}
return 0;
}
你需要
ifstream c("cv.RAW", std::ios_base::binary)
,如果您讀取沒有此標志的二進制文件,它將被視為文本文件,並為您提供不正確的值。 if (c.good())
還是if (c)
來檢查文件是否打開 if (c.good())
還是if (c)
檢查讀取是否成功 c.read((char*)&b, sizeof(b))
進行讀取,對於單個字節,請使用char ch; c.read(&ch, sizeof(ch))
char ch; c.read(&ch, sizeof(ch))
iostream默認情況下不會拋出異常,因此每次使用它們時,您始終需要檢查它們的狀態。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.