https url 下载

it2026-02-15  11

import java.security.cert.CertificateException; import java.security.cert.X509Certificate; import javax.net.ssl.X509TrustManager; /** * 信任证书管理器 * @author Administrator * */ public class TrustAnyTrustManager implements X509TrustManager{ @Override public void checkClientTrusted(X509Certificate[] arg0, String arg1) throws CertificateException { } @Override public void checkServerTrusted(X509Certificate[] arg0, String arg1) throws CertificateException { } @Override public X509Certificate[] getAcceptedIssuers() { return new X509Certificate[] {}; } } import javax.net.ssl.HostnameVerifier; import javax.net.ssl.SSLSession; public class TrustAnyHostnameVerifier implements HostnameVerifier { @Override public boolean verify(String arg0, SSLSession arg1) { return true; } } void downloadSound(String downloadPath) { try { if(downloadPath != null && downloadPath != "") { TrustManager[] tm = { new TrustAnyTrustManager() }; SSLContext sc = SSLContext.getInstance("SSL", "SunJSSE"); sc.init(null, tm, new java.security.SecureRandom()); String filename = downloadPath.substring(downloadPath.lastIndexOf("/") + 1); URL url = new URL(downloadPath); HttpsURLConnection conn = (HttpsURLConnection)url.openConnection(); conn.setSSLSocketFactory(sc.getSocketFactory()); conn.setHostnameVerifier(new TrustAnyHostnameVerifier()); conn.setDoOutput(true); conn.setDoInput(true); conn.connect(); InputStream in = conn.getInputStream(); BufferedInputStream bis = new BufferedInputStream(in); BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(new File("D:" + File.separator + filename))); byte[] buffer = new byte[1024]; int read; while((read = bis.read(buffer)) != -1 ) { bos.write(buffer, 0, read); } bos.close(); bis.close(); } } catch (Exception e) { e.printStackTrace(); } }

 加一个需求:将从url读取到的.wav转换成mp3文件

//创建临时文件 File temp = File.createTempFile(filename, ".wav"); BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(temp));

byte[] buffer = new byte[1024]; int read; while((read = bis.read(buffer)) != -1 ) { bos.write(buffer, 0, read);  //将读取到的wav音频文件写入临时文件 }AudioUtils.transform(temp, "D:" + File.separator + destName + ".mp3");bos.close();bis.close();temp.deleteOnExit();//程序退出删除临时文件

public static File transform(File source , String destFileName) throws Exception { File target = new File(destFileName); AudioAttributes audio = new AudioAttributes(); audio.setCodec("libmp3lame"); audio.setBitRate(new Integer(36000)); // audio.setChannels(new Integer(2)); //1 mono 单声道 2 stereo 立体声 audio.setSamplingRate(new Integer(44100)); //设置编码进程的采样率值 EncodingAttributes attrs = new EncodingAttributes(); attrs.setFormat("mp3"); attrs.setAudioAttributes(audio); Encoder encoder = new Encoder(); encoder.encode(source, target, attrs); return target; }

 

转载于:https://www.cnblogs.com/Uzai/p/10273321.html

相关资源:DirectX修复工具V4.0增强版
最新回复(0)