jsp阶段:
<audio controls="controls" controlsList="nodownload"><source src="${ctx }/phone/getAudio.ce?type=3&PATHID='+mp+'" type="audio/mpeg"></audio>
效果图:
java部分:
@RequestMapping("getAudio")
@ResponseBody
public String getAudio(HttpServletRequest request, HttpServletResponse response) throws Exception{
Map<String, Object> map = getPageMapParams();
List<Map<String, Object>> list_new =xcxQqandWxServices.getimgOraudiopath(map);
String path = (String)list_new.get(0).get("TRANCFILEPATH");
if (path!=null) {
String range = request.getHeader("Range");
String[] rs = range.split("\\=");
range = rs[1].split("\\-")[0];
File file = new File(path);
OutputStream os = response.getOutputStream();
FileInputStream fis = new FileInputStream(file);
long length = file.length();
// 播放进度
int count = 0;
// 播放百分比
int percent = (int)(length * 1);
int irange = Integer.parseInt(range);
length = length - irange;
response.addHeader("Accept-Ranges", "bytes");
response.addHeader("Content-Length", length + "");
response.addHeader("Content-Range", "bytes " + range + "-" + length + "/" + length);
response.addHeader("Content-Type", "audio/mpeg;charset=UTF-8");
int len = 0;
byte[] b = new byte[1024];
while ((len = fis.read(b)) != -1) {
os.write(b, 0, len);
count += len;
if(count >= percent){
break;
}
}
fis.close();
os.close();
}
return null;
}
借鉴地址:https://blog.csdn.net/xxzblog/article/details/41312315
初识pytorch中的Dataset和DataLoader
当我们需要下载python包的时候,默认是从境外镜像进行下载的,速度会很慢,如何我们下载jieba,使用下面命令:pip install jieba一个20M的文件包,可能需要大几分钟的时间。我们将镜像换成清华镜像,秒几就能完成任务。运行指令如下:pip install jieba -i https://pypi.tuna.tsinghua.edu.cn/simple/...
Celery是Python开发的分布式任务调度模块,今天抽空看了一下,果然接口简单,开发容易,5分钟就写出了一个异步发送邮件的服务。Celery本身不含消息服务,它使用第三方消息服务来传递任务,目前,Celery支持的消息服务有RabbitMQ、Redis甚至是数据库,当然Redis应该是最佳选择。安装Celery用pip或easy_install安装:$ sudo pip install Cel...
一般建议:The MathWorks有很多教学资源,可以给你一些课程的想法.一些示例链接:具体建议:我发现有趣的非线性动力学研究课题之一是Lorenz oscillators.洛伦兹振荡器是一个可以表现出混沌行为的三个变量的非线性系统.这样一个系统将为学生提供数学计算的机会(iterative methods,用于模拟微分方程系统,稳定性和收敛性等).这个项目最有趣的是我们使用Lorenz振荡器对...
关注+星标公众号,不错过精彩内容一、 前言大家好,我是『strongerHuang』黄工,这一年来,感谢大家对公众号的支持,但是感谢不能停留在嘴上,所以,这次邀请了正点原子赞助。一起给大...
文章目录用流收集数据收集器的用途收集器简介收集器用作高级归约归约和汇总计算总数-counting查找流中的最大值和最小值-minBy maxByCollectors.maxBy汇总总数 Collectors.summingXXXsummingIntsummingLong summingDouble平均数-averagingXXX统一获取汇总信息-summarizingXXXsummarizingI...
为什么80%的码农都做不了架构师?>>> ...
pycharm 快捷键提示CTRL Q: 在参数列表位置,显示可以输入的所有参数。CTRL Q: 查看选中方法的文档字符串阅读CTRL -: 折叠当前代码CTRL +: 展开当前代码CTRL SHIFT -: 折叠所有代码CTRL SHIFT +: 展开所有代码CTRL SHIFT F7: 将当前单词在整个文件中高亮,F3移动到下一个,ESC取消高亮。CTRL F11...
现在来看第二部分,第二部分其实是把要用的模块文件压缩了一个接一个放在一起就行了。压缩算法的名字叫lh5,一提到算法,国内研究这种“低层次”东西的人就少了(大家都搞往窗体上拖放几个控件就能实现功能的高层次的应用程序)。好在我在国外的网站上无意中发现了lh5压缩算法的源码,用TC写的,我又从网上把TC这个老古董下载下来,最后居然编译成功了(当然做过一些修改),编译生成的文件名叫ar.exe(文中
function fbxx(u_id){ //我发布的信息 //alert(u_id); document.body.style.overflow = hidden; document.body.style.height = document.documentElement.clientHeight + px; window.open(user_index_fbxx.jsp,_bl
百度地图api设置点的设置代码为:var myIcon = new BMap.Icon();所以首先要找到这行代码,并在括号中加上图片信息:var myIcon = new BMap.Icon("http://map.baidu.com/image/us_mk_icon.png", new BMap.Size(50,50));很多人使用过程中会发现如果百度地图的这...
简单的通过DrawerLayout + NavigationView 实现侧滑效果。MainActivitypackage com.example.qxb_810.qqdemohuadong;import android.os.Bundle;import android.support.annotation.NonNull;import android.support.design....