2

NAudio を使用して WaveStream をバイト配列に変換するにはどうすればよいですか?

4

3 に答える 3

2
public static class StreamExtension
{
    public static byte[] ToArray(this Stream stream)
    {
        byte[] buffer = new byte[4096];
        int reader = 0;
        MemoryStream memoryStream = new MemoryStream();
        while ((reader = stream.Read(buffer, 0, buffer.Length)) != 0)
            memoryStream.Write(buffer, 0, reader);
        return memoryStream.ToArray();
    }
}
于 2013-01-23T14:11:26.977 に答える
1

あなたはこのビジョンを試すことができ、あなたのために働くはずです、試してみてください

  MemoryStream memoryStr = new MemoryStream();
            while ((read = stream.Read(buffer, 0, buffer.Length)) != 0)
                memoryStr.Write(buffer, 0, read );
于 2013-01-23T14:25:29.997 に答える
0

のように使用しますSystem.IO.Stream。読み取りメソッドを使用します。でも覚えておいて。ストリーム全体を ONE に変換するBytearrayと、 およびOutOfMemoryException. それは、流れの大きさによって異なります。しかし、次のようなものを使用できます。

byte[] buffer = new byte[stream.Length];
int read = stream.Read(buffer, 0, buffer.Length);
于 2013-01-23T14:07:10.567 に答える