Android音乐播放器读取歌词.lrc文件乱码问题解决方法
最近在做Android音乐播放器,在读取本地歌词的时候,老是乱码,使我很郁闷:今天在网上看到一个文件转码的文章,彻底解决了我的乱码问题,这样我就不用自己去手动的转码lrc歌词文件你的编码了,现在与大家分享一下这一文章:
- package com.qgmobile.utils;
- import java.io.BufferedInputStream;
- import java.io.BufferedReader;
- import java.io.File;
- import java.io.FileInputStream;
- import java.io.IOException;
- import java.io.InputStreamReader;
- /**
- * 转换文件的编码格式
- * @author yangchuxi
- *
- */
- public class ConvertFileCode {
- public String converfile(String filepath){
- System.out.println("ConvertFileCode--------->"+filepath);
- File file=new File(filepath);
- FileInputStream fis=null;
- BufferedInputStream bis=null;
- BufferedReader reader=null;
- String text="";
- try {
- fis=new FileInputStream(file);
- bis=new BufferedInputStream(fis);
- bis.mark(4);
- byte[] first3bytes=new byte[3];
- // System.out.println("");
- //找到文档的前三个字节并自动判断文档类型。
- bis.read(first3bytes);
- bis.reset();
- if (first3bytes[0] == (byte) 0xEF && first3bytes[1] == (byte) 0xBB
- && first3bytes[2] == (byte) 0xBF) {// utf-8
- reader = new BufferedReader(new InputStreamReader(bis, "utf-8"));
- } else if (first3bytes[0] == (byte) 0xFF
- && first3bytes[1] == (byte) 0xFE) {
- reader = new BufferedReader(
- new InputStreamReader(bis, "unicode"));
- } else if (first3bytes[0] == (byte) 0xFE
- && first3bytes[1] == (byte) 0xFF) {
- reader = new BufferedReader(new InputStreamReader(bis,
- "utf-16be"));
- } else if (first3bytes[0] == (byte) 0xFF
- && first3bytes[1] == (byte) 0xFF) {
- reader = new BufferedReader(new InputStreamReader(bis,
- "utf-16le"));
- } else {
- reader = new BufferedReader(new InputStreamReader(bis, "GBK"));
- }
- String str = reader.readLine();
- while (str != null) {
- text = text + str + "/n";
- str = reader.readLine();
- }
- System.out.println("text"+text);
- } catch (Exception e) {
- e.printStackTrace();
- }finally{
- if (fis!=null) {
- try {
- fis.close();
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
- if(bis!=null){
- try {
- bis.close();
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
- }
- return text;
- }
- }
Android音乐播放器读取歌词.lrc文件乱码问题解决方法相关推荐
- Android应用开发--MP3音乐播放器滚动歌词实现
Android应用开发--MP3音乐播放器滚动歌词实现 2013年6月2日 简.美音乐播放器开发记录 -----前话 有网友给我博客评论说,让我借鉴好的Android代码,代码贴出来的时候最好整体先 ...
- Android应用开发 MP3音乐播放器滚动歌词实现
分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! Andr ...
- 乐乐音乐:Android音乐播放器及动感(KTV)歌词相关博客汇总
相关简介 Java Swing PC版本乐乐音乐播放器 乐乐音乐PC播放器单机版本,支持ape,wav,flac,mp3等多种格式,支持动态ksc.hrc.krc歌词文件和支持和显示翻译歌词和音译歌词 ...
- Android音乐播放器源码(歌词.均衡器.收藏.qq5.0菜单.通知)
一款Android音乐播放器源码,基本功能都实现了 qq5.0菜单(歌词.均衡器.收藏.qq5.0菜单.通知) 只有向右滑动出现,菜单键和指定按钮都还没有添加. 源码下载:http://code.66 ...
- android版音乐播放器开发教程,Android音乐播放器开发文档(20200907152026).pdf
Android 音乐播放器 撰写人:张 XX 2011-3-15 一. 问题定义 本软件是为了用户智能手机 Android 而开发的一套智能软件, 提供在线 下载音乐,在线播放音乐,读取 SD 卡音乐 ...
- 基于android音乐播放器的设计
本科毕业论文(设计)诚信声明 本人郑重声明:所呈交的毕业论文(设计),题目<---基于android音乐播放器的设计----------->是本人在指导教师的指导下,进行研究工作所取得的成 ...
- Android音乐播放器开发(2)—登录
1. 说明 本音乐播放器基于Android开发,原为我和另外两个小伙伴在上学期间一起做的一个小项目,近来有时间整理一下.之前我有文章已经介绍了播放界面的功能实现(Android音乐播放器开发),但介绍 ...
- android七大主流Android音乐播放器横向评测
随着智能手机和3G网络的普及,移动互联网日益成为人们生活娱乐的重心之一.在音乐领域,竞争也十分激烈,在PC之后,几大提供音乐服务的厂商正在加紧占据手机客户端. 本期我们在Android平台挑选了七家国 ...
- android 音乐播放器论文,毕业论文:ANDROID音乐播放器
用于设置歌曲播放进度条和显示当前播放时间和总时间.第四个用于显示播放控制和音量进度条. (3)界面的初始化操作 Android的每一个可视化界面,都有其的唯一的布局配置文件,该文件里面有各种布局方式, ...
- 基于android音乐播放器的设计与实现
目 录 第1章 引言 4 1.1 项目背景 4 1.2 编写目的 4 第2章 系统需求分析 5 2.1 功能需求 5 2.1.1 播放器基本控制需求 5 2.1.2 网络歌曲需求 6 2.1.2 歌词 ...
最新文章
- 在CentOS 6.9 x86_64的OpenResty 1.13.6.1上使用LuaRocks示例
- C#未来新特性:静态委托和函数指针
- php switch换界面,php switch的“高级”用法详解
- XCTF-Reverse:insanity
- java正则表达式 ^expr 和 [^expr] 和 ^[^expr]的比较
- Ubuntu下安装Python3(与旧Python2版本共存)
- php的Allowed memory size of 134217728 bytes exhausted问题解决办法
- 我的世界服务器氪金系统怎么做,[经济]PPRMB销售系统 1.3.1 —— 地图扫码自动到账,氪金系统如此简单[全版本]...
- 我用wget下载CentOS镜像文件
- [深度学习] loss不下降的解决方法
- 职场攻略:每天淘汰自己的不足
- 开源分布式数据库中间件 DBLE
- Java查找算法-17-二分查找
- docker目录 /var/lib/docker/containers 日志清理
- 电脑网络设置出现红叉解决办法,详细步骤并配图,附网盘链接,亲测有效
- 三星java安装_三星F488E的JAVA安装方法
- 是男人,不妨试试避孕药吧!
- 剪断的翅膀,如何起飞
- 2019/03/20 格林威治时间(Tue Jan 01 00:00:00 CST 2019)[ Date ]转化 为 [ 2019-01-01 10:10:10 ]
- 常用五金紧固件选择表