/// <summary> /// 動画情報からファイル名を取得する /// </summary> /// <param name="format"></param> /// <param name="video"></param> /// <param name="extension"></param> /// <param name="replaceStricted"></param> /// <param name="suffix"></param> /// <returns></returns> public string GetFileName(string format, IListVideoInfo video, string extension, bool replaceStricted, string?suffix = null) { var info = new VideoInfoForPath() { Title = video.Title.Value, OwnerName = video.OwnerName.Value, NiconicoID = video.NiconicoId.Value, UploadedOn = video.UploadedOn.Value, DownloadStartedOn = DateTime.Now, OwnerID = video.OwnerID.Value.ToString(), Duration = video.Duration.Value, }; return(this.GetFilenameInternal(format, info, extension, replaceStricted, suffix)); }
/// <summary> /// セッション情報からファイル名を取得する /// </summary> /// <param name="format"></param> /// <param name="session"></param> /// <returns></returns> public string GetFileName(string format, IDmcInfo dmcInfo, string extension, bool replaceStricted, string?suffix = null) { var info = new VideoInfoForPath() { Title = dmcInfo.Title, OwnerName = dmcInfo.Owner, NiconicoID = dmcInfo.Id, UploadedOn = dmcInfo.UploadedOn, DownloadStartedOn = dmcInfo.DownloadStartedOn, OwnerID = dmcInfo.OwnerID.ToString(), Duration = dmcInfo.Duration, }; return(this.GetFilenameInternal(format, info, extension, replaceStricted, suffix)); }
/// <summary> /// 日付情報を取得する /// </summary> /// <param name="format"></param> /// <param name="dt"></param> /// <returns></returns> private string GetDateReplacedString(string format, VideoInfoForPath info) { if (Regex.IsMatch(format, "^.*<uploadedon:.+>.*$")) { var match = Regex.Match(format, "<uploadedon:.+>"); var customFormat = match.Value[12..^ 1];