1

我正在尝试将 google api 用作文本转语音。因此,我构建了一个字符串,然后将其作为 URL 传递给组件,以获取带有口语单词的 MP3。所以,这是我的代码:

URI uri = new URI("http://translate.google.com/translate_tts?tl=es&q="+ URLEncoder.encode((String)this.text.getValue(), "UTF-8"));

当我让它uri.toString()返回一个格式良好的 URL 时。如果我将此输出复制并粘贴到浏览器中,则效果很好。但是,如果我将此返回的字符串分配给 ice 的源属性:outputMedia 不起作用。然后检查页面中生成的 HTML,src 属性中的字符串为:

http://translate.google.com/translate_tts?tl=es&q=Bobby+need+peanuts

& 符号已替换为&

如何避免这种情况以创建有效的 URL?

4

1 回答 1

0

您需要使用 Javascript 在客户端解码url。

var decoded = decodeURI(URI)
于 2012-04-24T18:41:13.153 回答