今天给大家一个解析lrc歌词的源码。这是我刚刚学Cocoa的时候写的一点小东西,希望对cocoachina的读者有点用。
几点说明:
1 这个代码是我刚学Cocoa开发的时候写的,仅仅是**能用**,问题挺多的,我一直没时间改。如果你能改改,感谢:)代码用了property和Obj-C 2.0的for循环,所以只能用在Leopard上。
2 这个代码仅仅是提供一个借鉴,你怎么用,没问题。你可以在这个代码上随便修改,也可以看看思路然后写一个自己的。
3 如果你想转载,请保留cocoachina.com这个地址。
4 你可以在你自己的程序中使用这个代码,但是–这个代码如果给你程序造成了什么影响,或者对你的用户造成什么影响,我是不负责的。
5 其实-这个代码是个坏例子。几乎所有初学者能犯的毛病你都能在这个代码中找到蛛丝马迹。
6 不支持ar、ti、al、by标签,但是支持一行多条歌词,以及时间排序。
7 只支持GB2312编码,不支持UTF-8。
用法:
LyricsParser *parser;
NSString *lyricsFile =@"xxx.lrc";
NSFileManager *fm = [NSFileManager defaultManager];
BOOL fileExists = [fm fileExistsAtPath:lyricsFile] ;
if (fileExists)
{
parser=[LyricsParser alloc];
[parser InitWithFilename:lyricsFile];
}
NSString *durtime=[NSString stringWithFormat:@"%02d:%02d.00",minute, second];
[parser getLyrics:durtime:@"%M:%S.%F"];
如果你读了上面这几条,还是想看一看的话,请在这里下载。
另外,可能你对[parser getLyrics:durtime:@"%M:%S.%F"]; 这种写法有点晕。说实在的我现在自己看也觉得晕,而且它竟然能用。
发表评论