using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using System.Net; using System.IO; using System.Threading; using Newtonsoft.Json.Linq; namespace voice { public partial class Form1 : Form { string testtoken = ""; string cuid = "";//随便写 string serverURL = "http://vop.baidu.com/server_api"; public Form1() { InitializeComponent(); cuid = Guid.NewGuid().ToString(); } private string Post(string audioFilePath) { serverURL += "?lan=zh&cuid=kwwwvagaa&token=" + testtoken; FileStream fs = new FileStream(audioFilePath, FileMode.Open); byte[] voice = new byte[fs.Length]; fs.Read(voice, 0, voice.Length); fs.Close(); fs.Dispose(); HttpWebRequest request = null; Uri uri = new Uri(serverURL); request = (HttpWebRequest)WebRequest.Create(uri); request.Timeout = 5000; request.Method = "POST"; request.ContentType = "audio/wav; rate=16000"; request.ContentLength = voice.Length; try { using (Stream writeStream = request.GetRequestStream()) { writeStream.Write(voice, 0, voice.Length); writeStream.Close(); writeStream.Dispose(); } } catch { return null; } string result = string.Empty; string result_final = string.Empty; using (HttpWebResponse response = (HttpWebResponse)request.GetResponse()) { using (Stream responseStream = response.GetResponseStream()) { using (StreamReader readStream = new StreamReader(responseStream, Encoding.UTF8)) { string line = string.Empty; StringBuilder sb = new StringBuilder(); while (!readStream.EndOfStream) { line = readStream.ReadLine(); sb.Append(line); sb.Append("\r"); } readStream.Close(); readStream.Dispose(); result = sb.ToString(); string[] indexs = result.Split(','); foreach (string index in indexs) { string[] _indexs = index.Split('"'); if (_indexs[2] == ":[") result_final = _indexs[3]; } } responseStream.Close(); responseStream.Dispose(); } response.Close(); } return result_final; } private void button1_Click(object sender, EventArgs e) { textBox1.Text = Post(Application.StartupPath + "\\2.wav"); } } }
附件中有源代码,具体看里面的README
创新互联从2013年开始,先为阿鲁科尔沁等服务建站,阿鲁科尔沁等地企业,进行企业商务咨询服务。为阿鲁科尔沁企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。 附件:http://down.51cto.com/data/2368300另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。