Преобразование длительности в секунды

Nakus

Client
Регистрация
28.09.2013
Сообщения
156
Благодарностей
33
Баллы
28
Помогите с решением, как преобразовывать длительность видео в секунды? Длительность предоставляется так:
PT36S
PT1M59S
PT3H37M21S
PT1H13S
...
 

Ахилес

Client
Регистрация
11.11.2020
Сообщения
852
Благодарностей
346
Баллы
63
вот что ИИ выдал...

Этот код принимает строку длительности видео в формате "PTHM**S" и возвращает общее количество секунд. Вы можете использовать этот код в своем приложении на C#.

C#:
using System;

class Program
{
    static void Main()
    {
        Console.WriteLine(ConvertVideoDurationToSeconds("PT36S"));      // 36
        Console.WriteLine(ConvertVideoDurationToSeconds("PT1M59S"));    // 119
        Console.WriteLine(ConvertVideoDurationToSeconds("PT3H37M21S"));  // 13041
        Console.WriteLine(ConvertVideoDurationToSeconds("PT1H13S"));    // 3613
    }

    static int ConvertVideoDurationToSeconds(string duration)
    {
        int seconds = 0;

        // Удаление префикса "PT"
        duration = duration.Replace("PT", "");

        // Разделение на части по буквам
        string[] parts = duration.Split(new char[] { 'H', 'M', 'S' }, StringSplitOptions.RemoveEmptyEntries);

        foreach (string part in parts)
        {
            int value = int.Parse(part[..^1]); // Извлечение числового значения
            char unit = part[^1]; // Извлечение единицы измерения

            switch (unit)
            {
                case 'H':
                    seconds += value * 3600; // Преобразование часов в секунды
                    break;
                case 'M':
                    seconds += value * 60; // Преобразование минут в секунды
                    break;
                case 'S':
                    seconds += value; // Просто добавляем секунды
                    break;
            }
        }

        return seconds;
    }
}
 

heks

Client
Регистрация
01.10.2013
Сообщения
1 076
Благодарностей
256
Баллы
83
я думаю так остальное время по аналогии сделаешь
 

Вложения

  • 13 КБ Просмотры: 2

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)