2011-03-03 28 views
0

我用MATLAB來改變文件的字節順序。它的工作原理,但排序不會改變。這段代碼有什麼問題?如何更改文件的字節順序?

f = fopen('139o.wav','r+'); 
    litEndFile=fread(f); 

    fwrite(f,litEndFile,'int16',0,'ieee-be'); 
    fclose(f); 

回答

1

它應該工作,只要數據文件確實小endian,你是如何檢查你的結果?有了這個構造,我認爲你將大端數據附加到文件中。如果要覆蓋文件,請在fwrite(...)之前撥打frewind(f)

+0

我在[本主題]的幫助下檢查了我的結果(http://stackoverflow.com/questions/5187469/how-to-find-out-endianness-of-a-file)。但是現在據說這並沒有給出正確的結果。我現在很困惑! –

+0

它的工作原理。它確實改變了字節序的類型。但'r +'使它追加到文件中。現在我將檢查如何更改文件本身。 –