Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 将音频转换为字符串(就像我们可以将图像转换为Base64String一样)?_C#_.net - Fatal编程技术网

C# 将音频转换为字符串(就像我们可以将图像转换为Base64String一样)?

C# 将音频转换为字符串(就像我们可以将图像转换为Base64String一样)?,c#,.net,C#,.net,我一直在使用Convert.ToBase64String(…)将图像嵌入到XML文档中,现在我想将音频录制嵌入到XML文件中 有没有一种方法可以将音频文件转换为某种字符串,就像我们可以将图像转换为字符串嵌入XML文件一样?我相信您希望将音频文件读入二进制文件,然后进行转换。首先,我同意您最初的想法,通过convert.ToBase64String转换为字符串(…但至少在我的示例中,我很难转换回字节并使用该方法播放声音 下面是一个在这里工作的快速示例: static void Main(strin

我一直在使用
Convert.ToBase64String(…)
将图像嵌入到XML文档中,现在我想将音频录制嵌入到XML文件中


有没有一种方法可以将音频文件转换为某种字符串,就像我们可以将图像转换为字符串嵌入XML文件一样?

我相信您希望将音频文件读入二进制文件,然后进行转换。

首先,我同意您最初的想法,通过convert.ToBase64String转换为字符串(…但至少在我的示例中,我很难转换回字节并使用该方法播放声音

下面是一个在这里工作的快速示例:

static void Main(string[] args)
{
    string filename = @"C:\Users\Public\Music\Sample Music\Ping.wav";
    string tmp = "";
    SoundPlayer sp;
    if (File.Exists(filename))
    {
        byte[] filebytes = File.ReadAllBytes(filename);
        Console.WriteLine("filebytes length: " + filebytes.Length);
        //tmp = Convert.ToBase64String(File.ReadAllBytes(filename), Base64FormattingOptions.None);
        tmp = System.Text.Encoding.BigEndianUnicode.GetString(File.ReadAllBytes(filename));
        Console.Write("string length: " + tmp.Length);
        //sp = new SoundPlayer(new MemoryStream(filebytes));
        //sp.Play();

        Console.ReadLine();

        byte[] bytes = System.Text.Encoding.BigEndianUnicode.GetBytes(tmp);//Encoding.ASCII.GetBytes(tmp);
        Console.WriteLine("bytes length: " + bytes.Length);
        sp = new SoundPlayer(new MemoryStream(bytes));
        sp.Play();
        Console.ReadLine();
    }
}

那么,是什么阻止您将音频文件转换为base64字符串呢?所有文件都只是一个字节序列。因此,base64编码音频文件与base64编码图像文件没有什么不同。Visual Studio一直显示一个红色的波形,但没有错误信息。我只是假设我是以错误的方式进行的,当我搜索了“将音频文件转换为字符串C”@Aeron:显示你的代码,然后!-)我只是认为我的做法是错误的,如果你是,我们不会知道,因为你没有提供。