我想從使用C++的文件中提取一些整數,但我不確定自己是否正確地做了。C++從VB6讀取文件中的某些整數
我在VB6的代碼如下:
Redim iInts(240) As Integer
Open "m:\dev\voice.raw" For Binary As #iFileNr
Get #iReadFile, 600, iInts() 'Read from position 600 and read 240 bytes
我轉換到C++是:
vector<int>iInts
iInts.resize(240)
FILE* m_infile;
string filename="m://dev//voice.raw";
if (GetFileAttributes(filename.c_str())==INVALID_FILE_ATTRIBUTES)
{
printf("wav file not found");
DebugBreak();
}
else
{
m_infile = fopen(filename.c_str(),"rb");
}
但現在我不知道如何從那裏繼續,我也不知道「rb」是否正確。
我建議使用C++ I/O str Eams而不是低級API,操作符>>有幾個重載,這使得提取基本數據類型的值非常容易 –
代碼中有很多特定於Windows的API。添加標籤。 –
對VB語句的評論似乎是一種觸動。它讀取的是240 *字節*還是240 *整數*(或者可能是240個8位整數?)要知道如何寫出所寫的內容,您首先必須知道它是如何寫入的。 – WhozCraig