将一个字节数组(byte[])写入为mp3文件。

4

这是我正在做的事情,我读取一个.mp3文件,并将其转换为Base64String

using (fileStream)
{ 
  fileStreamLength = (int)fileStream.Length + 1;
  fileInBytes = new byte[fileStreamLength];
  int currbyte = 0, i = 0;
  while (currbyte != -1)
  {
  currbyte = fileStream.ReadByte();
  fileInBytes[i++] = (byte)currbyte;
  }
}
    
string fileInString = Convert.ToBase64String(fileInBytes);

现在经过一些工作,我再次拥有相同的Base64String,我将通过byte[] asBytesAgain = Convert.FromBase64String(fileInString);将其转换为字节。

现在我的问题是如何将这个byte[]写入一个.mp3文件以供播放?

1个回答

9
File.WriteAllBytes("somefile.mp3", asBytesAgain);

它创建了一个mp3文件,但当我们在媒体播放器上运行它时,会出现错误并且无法播放该文件。 - Salman Lone
@SalmanLone File.WriteAllBytes 只会将您的数组中的字节写入磁盘。如果字节数组不构成有效的 mp3 文件,则问题很可能出在其他地方。 - Lorentz Vedeler
我正在使用ReadAllBytes(file);来读取字节,然后执行一些操作将其从单声道转换为立体声,然后调用WriteAllBytes。 - Salman Lone
正是我所需要的!非常感谢您提供了一行代码解决了我的字节输出问题! - SteckDEV

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接