C# 设置问题。

标签 c# .net naudio

    private void ReadText(string text)
    {
        string add = "http://translate.google.com/translate_tts?tl=ta&q=";
        add += HttpUtility.UrlEncode(text, Encoding.GetEncoding("utf-8"));
        try
        {
            using (var client = new WebClient())
            {
                try
                {
                    client.Headers[HttpRequestHeader.UserAgent] =
                        "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:7.0.1) Gecko/20100101 Firefox/7.0.1";                                            }
                catch
                {
                    MessageBox.Show("Intenet error");
                }

                try
                {                        
                    client.DownloadFile(add, "mp3CriationTest.mp3");
                }
                catch 
                {
                    MessageBox.Show("NAudio Error");
                }
            }
        }
        catch (WebException e3)
        {
            MessageBox.Show("ReadText error: " + e3);

        }
    }

我正在使用 nAudio 进行谷歌文本转语音(tts)。当我在 Visual Studio 调试(F5)上运行时,这段代码对我来说效果更好。但是当我创建安装文件时,我会收到异常消息“NAudio Error”。因此,很明显,在我的设置的应用程序文件夹中保存/创建“mp3CriationTest.mp3”时存在问题。但是当我使用 Visual Studio 调试(F5)时,在调试文件夹上创建“mp3CriationTest.mp3”工作正常。 谁能知道出了什么问题吗?请帮忙。

最佳答案

除非您具有管理权限,否则无法直接写入程序文件文件夹。可以将文件保存到应用程序数据文件夹(环境指定);就像

string fileName = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + "\\" + "mp3test.mp3";
client.DownloadFile(add, fileName);

关于C# 设置问题。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17885448/

相关文章:

c# - 添加两个可为空的整数不起作用

c# - 获取 cshtml 文件的语义模型?

c# - Svn 外部和 C# 程序集 - 不兼容?

c# .net 跨机器内存映射文件

windows - 在准确的时刻播放声音

c# - 如何获得 MIDI 事件的准确时间

c# - 如何制作正确的抽象实体类

c# - EFCore 删除引用的实体

c# - 布局文件中的渲染部分

c# - 如何多次录制和播放音频,替换音频文件NAdio