gpt4 book ai didi

C# 下载 Text to Speech from Google Translate 有问题

转载 作者:行者123 更新时间:2023-11-30 22:34:35 25 4
gpt4 key购买 nike

我正在尝试下载由谷歌翻译生成的 mp3 文件,虽然实现了这一点,但翻译并没有按预期进行。

我是葡萄牙人,我们使用了很多特殊字符,我认为这就是问题所在...

string text = "Teste de criação no ficheiro";
string googleTextToSpeech = "http://translate.google.com/translate_tts?tl=pt&q=";
string url = googleTextToSpeech + HttpUtility.UrlEncode(text);
string url2 = googleTextToSpeech + text;

using (WebClient myWebClient = new WebClient())
{
myWebClient.DownloadFile(url, pathToSaveFile + "\\" + "mp3CriationTest.mp3");
myWebClient.DownloadFile(url2, pathToSaveFile + "\\" + "mp3CriationTest2.mp3");
}

文件实际上是创建的,但在这两种情况下,声音说的是同一件事:好的,直到“Teste de cria”(在“ç”和“~”之前)和“no ficheiro”。中间的声音说了一些不太明确的话......希望是明确的。 =)

如您所见,我尝试使用和不使用 UrlEncode,结果相同...我也尝试对所有 url 进行 UrlEncode。我用 BinaryWriter 试了一下,问题是一样的。我尝试在 myWebClient.DownloadFile 中传递 new Uri(url) 并且没有任何变化。

最让我烦恼的是,如果您将 url 结果放入浏览器中,您就可以收听正确的文本到语音。试试看:http://translate.google.com/translate_tts?tl=pt&q=Teste de criação no ficheiro

“Teste de criação no ficheiro”代表“文件创建测试”。

最佳答案

以下对我来说效果很好:

using System.Net;
using System.Text;
using System.Web;

class Program
{
static void Main()
{
var text = "Teste de criação no ficheiro";
var url = "http://translate.google.com/translate_tts?tl=pt&q=";
url += HttpUtility.UrlEncode(text, Encoding.GetEncoding("utf-8"));
using (var client = new WebClient())
{
client.Headers[HttpRequestHeader.UserAgent] = "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:7.0.1) Gecko/20100101 Firefox/7.0.1";
client.DownloadFile(url, "mp3CriationTest.mp3");
}
}
}

关于C# 下载 Text to Speech from Google Translate 有问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7757881/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com