Exemple #1
0
        /// <summary>
        /// Gets the files.
        /// </summary>
        /// <param name="item">The item.</param>
        /// <returns>Task&lt;List&lt;ItemFileInfo&gt;&gt;.</returns>
        public async Task <List <ItemFileInfo> > GetFiles(LocalItem item)
        {
            var path = item.LocalPath;

            path = _fileRepository.GetParentDirectoryPath(path);

            var list = await _fileRepository.GetFileSystemEntries(path).ConfigureAwait(false);

            var itemFiles = new List <ItemFileInfo>();

            var name = Path.GetFileNameWithoutExtension(item.LocalPath);

            foreach (var file in list.Where(f => f.Name.Contains(name)))
            {
                var itemFile = new ItemFileInfo
                {
                    Path = file.Path,
                    Name = file.Name
                };

                if (IsSubtitleFile(file.Name))
                {
                    itemFile.Type = ItemFileType.Subtitles;
                }
                else if (!IsImageFile(file.Name))
                {
                    itemFile.Type = ItemFileType.Media;
                }

                itemFiles.Add(itemFile);
            }

            return(itemFiles);
        }
Exemple #2
0
        private async Task <List <ItemFileInfo> > GetFiles(IServerSyncProvider provider, LocalItem item, SyncTarget target, CancellationToken cancellationToken)
        {
            var path = item.LocalPath;

            path = provider.GetParentDirectoryPath(path, target);

            var list = await provider.GetFileSystemEntries(path, target, cancellationToken).ConfigureAwait(false);

            var itemFiles = new List <ItemFileInfo>();

            var name = Path.GetFileNameWithoutExtension(item.LocalPath);

            foreach (var file in list.Where(f => f.Name.Contains(name)))
            {
                var itemFile = new ItemFileInfo
                {
                    Path = file.Path,
                    Name = file.Name
                };

                if (IsSubtitleFile(file.Name))
                {
                    itemFile.Type = ItemFileType.Subtitles;
                }

                itemFiles.Add(itemFile);
            }

            return(itemFiles);
        }
Exemple #3
0
        /// <summary>
        /// 展示文件的信息(如果存在的话)
        /// </summary>
        /// <param name="filePath">文件路径</param>
        public void showFileInfo(string filePath)
        {
            if (System.IO.File.Exists(filePath) && pForm != null)
            {
                infoForm                 = new Form();
                infoFText                = new TextBox();
                infoForm.Text            = "主值文件信息";
                infoForm.FormBorderStyle = FormBorderStyle.SizableToolWindow;
                infoForm.SetBounds(10, 10, 400, 300);
                infoForm.Controls.Add(infoFText);
                infoFText.Multiline = true;
                infoFText.SetBounds(5, 5, infoForm.Width - 25, infoForm.Height - 50);
                infoFText.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
                                                                          | System.Windows.Forms.AnchorStyles.Left)
                                                                         | System.Windows.Forms.AnchorStyles.Right)));

                infoFormArray.Add(infoForm);
                ItemFileInfo itemI = new ItemFileInfo(filePath);
                infoFText.Text = itemI.fileInfo;
                itemI.name     = System.IO.Path.GetFileNameWithoutExtension(filePath);
                itemI.value    = filePath;
                infoForm.Show();
            }
        }