获取谷歌语音库单词发音

1 篇文章 0 订阅
1 篇文章 0 订阅

最近要做一个英语学习软件,首先要考虑的就是词库,单词好找,发音比较难解决,分析了市面上几家语音引擎提供商,谷歌是发音最标准的了,下面是采集谷歌单词发音的c#代码。

/// <summary>
        /// 去谷歌官方api获取发音并下载到本地,返回音频文件相对路径
        /// </summary>
        /// <param name="word">单词全拼</param>
        /// <returns>返回音频文件相对路径</returns>
        private static string makeMp3(string word)
        {
            try
            {
                string url = "http://translate.google.com/translate_tts?tl=en&q=" + word;
                string k = word.Substring(0, 1);
                string path = HttpContext.Current.Server.MapPath("~/wordVolice/") + "\\" + k;
                if (!Directory.Exists(path))
                {
                    Directory.CreateDirectory(path);//在根目录下建立文件夹 
                }
                string filename = path + "\\" + word + ".mp3";


                System.Net.HttpWebRequest Myrq = (System.Net.HttpWebRequest)System.Net.HttpWebRequest.Create(url);
                System.Net.HttpWebResponse myrp = (System.Net.HttpWebResponse)Myrq.GetResponse();
                long totalBytes = myrp.ContentLength;
                System.IO.Stream st = myrp.GetResponseStream();
                System.IO.Stream so = new System.IO.FileStream(filename, System.IO.FileMode.Create);
                long totalDownloadedByte = 0;
                byte[] by = new byte[1024];
                int osize = st.Read(by, 0, (int)by.Length);
                while (osize > 0)
                {
                    totalDownloadedByte = osize + totalDownloadedByte;
                    so.Write(by, 0, osize);
                    osize = st.Read(by, 0, (int)by.Length);
                }
                so.Close();
                st.Close();
                return "/wordVolice/" + k + "/" + word + ".mp3"; 
            }
            catch {
                return null;
            }


        }


  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ModbusC语音是一种用于开发Modbus通信协议的C语言。Modbus是一种常用的工业通信协议,用于实现设备之间的数据通信和控制。ModbusC语音提供了一系列函数和工具,方便开发人员进行Modbus通信协议的实现。 ModbusC语音主要包括以下几个方面的功能: 1. Modbus协议栈实现:ModbusC语音提供了Modbus协议栈的实现,包括了Modbus协议的解析和封装。通过使用ModbusC语音,开发人员可以方便地处理Modbus数据帧,实现设备之间的通信。 2. Modbus主节点功能:ModbusC语音支持Modbus主节点的功能,开发人员可以通过设置相关参数来实现Modbus主节点的通信与控制。主节点可以通过发送Modbus指令,读取或写入从节点的数据,实现对设备的监控和控制。 3. Modbus从节点功能:ModbusC语音也支持Modbus从节点的功能,开发人员可以通过设置从节点的相关参数,使设备能够与主节点进行通信。从节点可以按照主节点的指令进行数据的读取和写入,实现设备与主节点的数据交换。 4. 多种通信方式支持:ModbusC语音支持多种通信方式,包括串口通信、TCP/IP通信等。开发人员可以根据实际应用需求选择合适的通信方式,并使用ModbusC语音进行开发。 总之,ModbusC语音是一种功能丰富、易于使用的工业通信协议开发,可以帮助开发人员快速实现Modbus通信协议,用于各种工业控制和监控应用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值