2015-10-24 186 views
1

我刚从c/C++开始。我能写二进制文件:在C中将文件转换为二进制缓冲区?

FILE *myFile= fopen("/mnt/music.mp3", "ab+"); // Doesn't exist 

fwrite(binaryBuffer, sizeOfBuffer, 1, myFile); 

所有我想要的是从“MYFILE”

得到一个新的“binaryBuffer”我怎样才能做到这一点?

谢谢!

+0

选择一个语言C和C++两种语言不同的解决方案。 – MSalters

回答

1

使用fread功能,它的工作原理就像fwrite

char buffer[BUFFER_SIZE]; // declare a buffer 
fread(buffer, length, 1, file); //read length amount of bytes into buffer 

如果你不知道如何读取的字节数,你可以寻求到文件的末尾找到的长度。

(如果你从你刚才给你写同一个文件中读出将要倒带) http://www.cplusplus.com/reference/cstdio/fread/

+0

谢谢!我在寻求后也忘了倒带() – alexino2

相关问题