首页 > 编程知识 正文

喜马拉雅文件转为mp3,喜马拉雅的音频如何转换成mp3格式

时间:2023-05-04 14:04:17 阅读:243407 作者:1729

可能很多朋友都会发现 ,喜马拉雅FM下载的VIP音频,一旦VIP过期后,将不能再收听,那么很多人都会想,如何才能在将在会员期下载的VIP音频离线备份,并且能随时收听。但是当大家伙找到下载的文件后,发现文件名和文件格式都是一堆乱码,转移出来后根本不知道这到底是时哪个文件,网上有很多人提供了Python程序来实现将这些.文件解密的方式,但是很多人并不一定都会Python,本文就讲述如何使用Java实现转换喜马拉雅下载的音频文件。

一、实现 基础

1、首先有一台可以上网的电脑

2、此电脑安装了Java运行环境和eclipse/myeclipse/intelij任何其一开发软件

3、此电脑为windows电脑  

4、如果想下载并转换VIP音频,需要有会员

二、软件实现

1、需要在电脑上下载喜马拉雅FM客户端

由于直接在喜马拉雅官网下载的PC客户端无法现在,我们采用曲线救国的方式来实现,使用windows电脑在微软应用商店中搜索“喜马拉雅”,搜索结果如下

点击安装此应用,安装成功后的效果就是如上,点击“启动”,效果如下:

2、登录

使用你自己的账号登录

3、修改下载文件 路径:

4、选择你要下载的音频,并点击下载,下载后的文件列表效果如下:

4、打开你刚刚设置的下载目录,文件结构如下:

上面目录中的20207764就是我下载的文件的文件夹(注意,每个音频集合的这个文件夹名称不一样)

5、将下载的程序拷贝至开发工具并运行(需要引入Org.json的Jar)

import java.io.File;import java.io.FileInputStream;import java.io.FileReader;import java.io.InputStreamReader;import java.io.Reader;import org.json.JSONArray;import org.json.JSONObject;/** * @Project: 便民(BeBianMin-BaJson)系统 * @Description: 中文类名。 * @Version 1.0.0 * @Author * <li>2020-01-23 1028743139@qq.com Create 1.0 * @Copyright ©2017-2020 BeBianMin(www.bajson.com),版权所有。 */public class XiMaLaYaCon{ public static void main(String[] args) { String sourceDir = "E:\音乐\大唐\20207764"; String jsonDir = sourceDir + "list.json"; System.out.println("————开始读取" + jsonDir + "文件————"); try { // File jsonFile = new File(fileName); FileReader fileReader = new FileReader(jsonDir); Reader reader = new InputStreamReader(new FileInputStream(jsonDir), "utf-8"); int ch = 0; StringBuffer sb = new StringBuffer(); while ((ch = reader.read()) != -1) { sb.append((char) ch); } fileReader.close(); reader.close(); JSONArray jsonArray = new JSONArray(sb.toString()); System.out.println("————读取" + jsonDir + "文件结束!————"); System.out.println("读取到文件内容为:" + jsonArray.toString()); if (jsonArray.length() >= 0) { for (int i = 0; i < jsonArray.length(); i++) { JSONObject jsonObject = jsonArray.getJSONObject(i); String trackId = String.valueOf(jsonObject.getInt("trackId")); String title = jsonObject.getString("title"); System.out.println("读取到的文件为:" + trackId + ",文件名称为:" + title); String fileDir = sourceDir + "\" + trackId + ".m4a"; String fileTar = sourceDir + "\" + title + ".mp3"; File fileSource = new File(fileDir); File fileTarget = new File(fileTar); fileSource.renameTo(fileTarget); } System.out.println("-------------转换完毕-----------"); } else { System.out.println("--------该目录下无要转换的文件--------"); } } catch (Exception e) { System.out.println("————读取" + jsonDir + "文件出现异常,读取失败!————"); e.printStackTrace(); return; } } }

将4中的文件夹目录拷贝并替换上面程序中的值

String sourceDir = "E:\音乐\大唐\20207764";

然后运行,就可以将文件的文件名称全部修改为正确的文件名称。

运行前的文件如下:

运行后的文件名称如下:

完美解决,如果你有问题,请下方评论,如果你觉得我能帮到您,还请您异步原网站,并点下网站里的广告,免费赞助我下

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。