TMusic/Util/MusicLrcUtil.cs

(开头部分) 4KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

using TMusic.Model;
using TMusic.ViewModel;
using System.Text.RegularExpressions;

namespace TMusic.Util
{
    public class MusicLrcUtil
    {
        private static string REGEX_WORD = ".*](.*)";
        private static string REGEX_TIME = "\\[([0-9.:]*)]";

        public static MusicLrcModel Parse(MusicViewModel model)
        {
            if (string.IsNullOrEmpty(model.Lrc))
            {
                return null;
            }

            string[] lines = model.Lrc.Split('\r', '\n');

            MusicLrcModel info = new MusicLrcModel();
            List<MusicLrcItemModel> items = new List<MusicLrcItemModel>();
            foreach (var line in lines)
            {
                if (string.IsNullOrEmpty(line)) continue;

                if (line.StartsWith("[ti:"))
                {
                    info.Title = GetSubString(line);
                }
                else if (line.StartsWith("[al:"))
                {
                    info.Album = GetSubString(line);
                }
                else if (line.StartsWith("[ar:"))
                {
                    info.Artist = GetSubString(line);
                }
                else if (line.StartsWith("[by:"))
                {
                    info.By = GetSubString(line);
                }
                else if (line.StartsWith("[offset:"))
                {
                    info.Offset = GetSubString(line);
                }
                else if (line.StartsWith("[total:"))
                {
                    string totalString = GetSubString(line);
                    if (double.TryParse(totalString, out double d))
                    {
                        info.Total = d;
                    }
                }
后面还有 90 行代码,解锁后查看完整代码

24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明

AI 解读

登录后可用,每次 10 积分,解读结果公开显示在下面。

还没有人解读过这个文件。