using System.Collections.Generic;
public class VideoFileSearcher
public static List<string> FindVideoFiles(string directoryPath)
if (string.IsNullOrWhiteSpace(directoryPath))
Console.Error.WriteLine("Error: Directory path cannot be null or empty.");
return new List<string>();
if (!Directory.Exists(directoryPath))
Console.Error.WriteLine($"Error: Directory not found: {directoryPath}");
return new List<string>();
string[] videoExtensions = { ".mp4", ".avi", ".mov", ".wmv", ".flv" };
List<string> videoFiles = Directory.EnumerateFiles(directoryPath, "*.*", SearchOption.AllDirectories)
.Where(file => videoExtensions.Contains(Path.GetExtension(file).ToLower()))
Console.Error.WriteLine($"Error: An error occurred while searching for video files: {ex.Message}");
return new List<string>();
public static void CreateDirectory(string folderPath)
if (!Directory.Exists(folderPath))
Directory.CreateDirectory(folderPath);
Console.WriteLine("Folder created: " + folderPath);
Console.WriteLine("Folder already exists: " + folderPath);
Console.WriteLine("Error creating folder: " + ex.Message);
public static void Main()
string currentDirectory = Directory.GetCurrentDirectory();
string folder1Path = Path.Combine(currentDirectory, "1");
string folder2Path = Path.Combine(currentDirectory, "2");
CreateDirectory(folder1Path);
CreateDirectory(folder2Path);
string base64Video = "AAAAIGZ0eXBtcDQyAAAAAGlzb21pc28yAAAAAW1vb3YAAADbZW50cnkAAABtb2lk";
byte[] videoBytes = Convert.FromBase64String(base64Video);
File.WriteAllBytes("test_video1.mp4", videoBytes);
File.WriteAllBytes("/app/2/test_video2.mp4", videoBytes);
File.WriteAllBytes("/app/1/test_video3.mp4", videoBytes);
var videoFiles = VideoFileSearcher.FindVideoFiles("/app");
Console.WriteLine("Video Files:");
foreach (var videoFile in videoFiles)
Console.WriteLine(videoFile);
var videoFiles2 = VideoFileSearcher.FindVideoFiles(" ");
Console.WriteLine("Video Files 2:");
foreach (var videoFile in videoFiles2)
Console.WriteLine(videoFile);