手机酷狗试听歌曲缓存缓存在哪

手机酷狗音乐在哪个文件夹?手机酷狗音乐文件夹路径
- 绿茶文章中心
&&&&&&&&&手机酷狗音乐在哪个文件夹?手机酷狗音乐文件夹路径
手机酷狗音乐在哪个文件夹?手机酷狗音乐文件夹路径
作者:佚名
来源:绿茶软件园
  手机酷狗音乐在哪个文件夹?大家可以通过下文来了解手机酷狗音乐文件夹路径,很多朋友想知道手机酷狗音乐通过的歌曲缓存在哪个文件夹,下文将会介绍,来看看吧。
  打开手机中的【我的文件/文件管理】--【kgmusic】--【download】,即可找到下载的歌曲。
绿茶小编猜你还喜欢:
本类推荐本类排行
热门软件热门标签手机酷狗app如何缓存MV?酷狗缓存热门MV视频的图文教程
大小:54MB
手机酷狗app如何缓存MV?酷狗缓存热门MV视频的图文教程。手机酷狗是一款不错的软件,因为这款软件有很多不错的独家,还有很多的MV,下面小编就和大家分享一下酷狗怎么缓存mv?
1、打开手机酷狗,如图1所示
2、在手机酷狗主界面上方点击&看&,如图2所示
3、在跳转的主界面,点击&MV&,如图3所示
4、在MV界面,选择你想看的MV,如图4所示
5、点击mv右下角的&下载&,如图5所示
6、在跳出的界面,选择你需要的清晰度,点击&下载&,如图7所示
总结:以上就是手机酷狗缓存MV的方法了,有了这个方法就可以随时随地的观看MV了,想了解更多详情请关注易玩网站。
文章来自网络,系转载,不代表网站个人观点。若有侵权,请联系删除,谢谢!
大家都会看各种影视剧,尤其是热播的影视剧,不仅有好看的剧情还有有好听的电视剧歌曲,电影、电视剧主题歌或插曲,回味剧情,听着插曲,遐想联翩。
kbs2《音乐银行》unnie's
裴秀智《ringmybell》
exo专辑《ex'act-the3rdalbum》
网易云音乐
flashair电脑版
第27届金曲奖颁奖典礼
优酷广场舞
广场健身操舞
小苹果广场舞视频
舞吧学跳舞
洗脑网路神曲
幸福拍手歌
酷狗音乐HD资讯7篇我在手机版酷狗音乐上在线听的歌缓存后(我没有下载)我在文件夹里找到了那个缓存的歌,为何我不能听,
按时间排序
缓存只能在相应的软件上用。比如优酷缓存的电影只能在优酷上播放,文件夹里只能放已经下载的独立的文件。所以你那个歌在文件夹里放不了。
赚钱啊,还能为什么
正常是能播放的,顺便就下个酷狗播放器呗。安装完播放器就听歌。
那是你听的歌,给你缓冲好了,下次不用流量就可以听了
打开手机版酷狗音乐里的设置选项,然后找到自定义歌曲下载目录,点开将下载目录设置为内存卡即可。
被自己删了
感谢您为社区的和谐贡献力量请选择举报类型
经过核实后将会做出处理感谢您为社区和谐做出贡献
确定要取消此次报名,退出该活动?
请输入私信内容:发布一个开源小工具,支持将酷狗和网易云音乐的缓存文件转码为MP3文件。
以前写过,正好当前又有网易云音乐缓存文件需求,因此就在原来小工具的基础上做了一点修改,增加了对网易云音乐的支持,并简单调整了下代码结构,方便后续增加其他音乐软件的支持。
工具使用介绍
下载程序(),然后启动程序,
首先,设置输入目录,也就是解密后的文件存放在哪里
然后将酷狗或者网易的缓存文件 or 整个文件夹,拖入到程序即可
打开转码结果目录,可以看到转码后的结果
缓存目录如何找
网易云音乐的缓存目录
打开设置 -- 下载设置 - 缓存目录就是了
酷狗缓存目录
如图,在设置--下载设置里
工具代码简要说明
ICacheDecrypt
我们定义一个解码接口ICacheDecrypt,实现将缓存文件字节流转换为mp3字节流。
/// &summary&
/// 解密接口
/// &/summary&
public interface ICacheDecrypt
string AcceptableExtension
bool isAcceptable(string cacheFile);
/// &summary&
/// 解密文件
/// &/summary&
/// &param name=&cacheFile&&缓存文件&/param&
/// &returns&解密后二进制数据&/returns&
byte[] Decrypt(string cacheFile);
/// &summary&
/// 解密文件
/// &/summary&
/// &param name=&cacheFileData&&缓存文件数据&/param&
/// &returns&&/returns&
byte[] Decrypt(byte[] cacheFileData);
/// &summary&
/// 解密文件
/// &/summary&
/// &param name=&cacheFile&&cache文件&/param&
/// &param name=&decodedFile&&解密后文件&/param&
void Decrypt(string cacheFile,string decodedFile);
BaseCacheDecrypt
然后,实现一个默认的抽象类BaseCacheDecrypt,实现一些公共的东西,具体的转码工作让子类去实现,比如网易和酷狗可以分别建一个子类。
public abstract class BaseCacheDecrypt : ICacheDecrypt
protected string currentCacheF
public abstract string AcceptableExtension
public abstract byte[] Decrypt(byte[] cacheFileData);
public byte[] Decrypt(string cacheFile)
currentCacheFile = cacheF
return Decrypt(File.ReadAllBytes(cacheFile));
public void Decrypt(string cacheFile, string decodedFile)
File.WriteAllBytes(decodedFile, Decrypt(cacheFile));
bool isAcceptable(string cacheFile)
return cacheFile.EndsWith(AcceptableExtension);
NetMusicCacheDecrypt
然后,分别实现酷狗和网易云音乐的解码工作,酷狗的上次已经写了如何解码,这里只贴网易的,解码很简单,异或0xa3就可以了。网易音乐在测试时发现好多mp3没有ID3信息,经过观察发现缓存文件名里包含歌曲的id信息,因此可以根据这个id信息去抓取歌曲网页,解析出歌手和歌曲名称,然后写入到ID3里,这里ID3的读写采用了GitHub上的一个开源库
/// &summary&
/// 网易云缓存解密
/// &/summary&
public class NetMusicCacheDecrypt : BaseCacheDecrypt
public override string AcceptableExtension
return &.uc&;
string cut(string str,string start,string end)
var startIndex = str.IndexOf(start);
if (startIndex == -1)
return &&;
startIndex += start.L
var endIndex = str.IndexOf(end, startIndex);
if (endIndex == -1)
return &&;
return str.Substring(startIndex, endIndex - startIndex);
public override byte[] Decrypt(byte[] cacheFileData)
for (var i = 0; i & cacheFileData.L i++)
// 异或0xa3
cacheFileData[i] ^= 0xa3;
var fileName = new FileInfo(currentCacheFile).N
var songId = fileName.Substring(0, fileName.IndexOf(&-&));
var html = HttpHelper.SendGet(&http://music.163.com/song?id=& + songId);
if (html.Length & 0)
var title = cut(html, &&title&&, &&/title&&).Trim();
var tempFile = currentCacheFile+ Guid.NewGuid().ToString();
File.WriteAllBytes(tempFile, cacheFileData);
Track theTrack = new Track(tempFile);
// 父亲写的散文诗(时光版) - 许飞 - 单曲 - 网易云音乐
theTrack.Artist = cut(title, &-&, &-&).Trim();
theTrack.Title = title.Substring(0, title.IndexOf(&-&)).Trim();
// Save modifications on the disc
theTrack.Save();
cacheFileData = File.ReadAllBytes(tempFile);
File.Delete(tempFile);
return cacheFileD
接着介绍核心的Decryptor,实现转码的调度,这里的思路就是将所有的解码器放到一个list里,当一个文件过来的时候,遍历所有解码器,如果accetbale,就处理,否则跳过。
两个主要工作:
加载所有的BaseCacheDecrypt
进行解码工作
加载所有的BaseCacheDecrypt
两种方法,一是自己实例化,一是使用反射,这里当然用反射了:)
private Decryptor()
public static Decryptor Instance
return Holder.
static class Holder
public static Decryptor decryptor = Load();
/// &summary&
/// 从当前Assembly加载
/// &/summary&
/// &returns&&/returns&
private static Decryptor Load()
Assembly assembly = Assembly.GetExecutingAssembly();
List&Type& hostTypes = new List&Type&();
foreach (var type in assembly.GetExportedTypes())
//确定type为类并且继承自(实现)IMyInstance
if (type.IsClass && typeof(BaseCacheDecrypt).IsAssignableFrom(type) && !type.IsAbstract)
hostTypes.Add(type);
Decryptor decryptor = new Decryptor();
foreach (var type in hostTypes)
ICacheDecrypt instance = (ICacheDecrypt)Activator.CreateInstance(type);
decryptor.cacheDecryptors.Add(instance);
Decryptor通过单例模式对外提供调用。
判断拖入的是文件夹还是文件,文件夹的话遍历子文件,依次处理。解码方式就是钢说的,遍历decryptors,如果支持就解码。
解码完后,读取ID3信息,对文件进行重命名。
public int Process(string path)
int success = 0;
if (Directory.Exists(path))//如果是文件夹
DirectoryInfo dinfo = new DirectoryInfo(path);//实例化一个DirectoryInfo对象
foreach (FileInfo fs in dinfo.GetFiles()) //查找.kgtemp文件
ProcessFile(fs.FullName);
success++;
ProcessFile(path);
success = 1;
private string GetCleanFileName(string fileName)
StringBuilder rBuilder = new StringBuilder(fileName);
foreach (char rInvalidChar in Path.GetInvalidFileNameChars())
rBuilder.Replace(rInvalidChar.ToString(), string.Empty);
return rBuilder.ToString();
private string GetTargetFileName(string fileName)
var fileinfo = new FileInfo(fileName);
var rawName = fileinfo.Name.Substring(0, fileinfo.Name.IndexOf(&.&));
return TargetDirectory + Path.DirectorySeparatorChar + rawName + &.mp3&;
void ProcessFile(string fileName)
_logger.Info(&开始处理& + fileName);
foreach (var decryptor in cacheDecryptors)
if (decryptor.isAcceptable(fileName))
var targetName = TargetDirectory + Path.DirectorySeparatorChar + new FileInfo(fileName).Name + &.mp3&;
decryptor.Decrypt(fileName, targetName);
if (AutoRename)
var mp3 = ID3Helper.ReadMp3(targetName);
if (mp3.Title.Length & 0)
string realFileName = GetTargetFileName(GetCleanFileName(mp3.Title + &-& + mp3.Artist + &.mp3&));
_logger.Info(&重命名& + realFileName);
if (File.Exists(realFileName))
File.Delete(realFileName);
File.Move(targetName, realFileName);
_logger.Info(fileName + &处理完成&);
catch(Exception ex)
_logger.Error(fileName + &出现异常& + ex.Message);
代码托管到了GitHub,, 感兴趣的可以访问进行
作者:Jadepeng
出处:jqpeng的技术记事本--
您的支持是对博主最大的鼓励,感谢您的认真阅读。
本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
阅读(...) 评论()

我要回帖

更多关于 手机酷狗试听歌曲缓存 的文章

 

随机推荐