我想從當前鏈接創建未來的下載鏈接。不確定我是否需要這種RoundTime方法。
這是lastRadarLink內容如何構建的示例:
https://sites/default/files/ims_data/map_images/IMSRadar/IMSRadar_202210221655.gif
這是日期時間部分:202210221655 2022 , 10/22 16:55。
我想在 16:55 再增加 5 分鐘,并用增加的 5 分鐘重建一個新鏈接,因此本示例中的下一個鏈接應該是:
https://sites/default/files/ims_data/map_images/IMSRadar/IMSRadar_202210221700.gif
private void DownloadNext(string lastRadarLink)
{
}
和 RoundTime 方法
DateTime RoundTime(DateTime date, TimeSpan interval)
{
return new DateTime(date.Ticks / interval.Ticks *
interval.Ticks);
}
uj5u.com熱心網友回復:
你把事情弄得這么復雜。在您的情況下,最簡單的方法是使用日期和時間格式字串。
例如:
using System.Globalization;
var time = DateTime.ParseExact("2022-10-22 16:55", "yyyy-MM-dd HH:mm", CultureInfo.InvariantCulture);
var fileName1 = $"XYZ_{time:yyyyMMddHHmm}.gif";
time = time.AddMinutes(5);
var fileName2 = $"XYZ_{time:yyyyMMddHHmm}.gif";
Console.WriteLine(fileName1);
Console.WriteLine(fileName2);
輸出是:
XYZ_202210221655.gif
XYZ_202210221700.gif
您可以在https://learn.microsoft.com/en-us/dotnet/standard/base-types/custom-date-and-time-format-strings閱讀有關它的更多資訊
回復您的評論,您可以從輸入字串中提取日期,如下所示
using System.Globalization;
var input = "sites/default/files/ims_data/map_images/IMSRadar/IMSRadar_202210221700.gif";
var timeString = input.Split("/")[^1][9..^4]; // timeString is here "202210221700"
var time = DateTime.ParseExact(timeString, "yyyyMMddHHmm", CultureInfo.InvariantCulture);
var fileName1 = $"XYZ_{time:yyyyMMddHHmm}.gif";
time = time.AddMinutes(5);
var fileName2 = $"XYZ_{time:yyyyMMddHHmm}.gif";
Console.WriteLine(fileName1);
Console.WriteLine(fileName2);
輸出將是:
XYZ_202210221700.gif
XYZ_202210221705.gif
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/522143.html
標籤:C#表格
