generateRotatedFilename static method
Generate rotated filename with timestamp
Implementation
static String generateRotatedFilename(
String originalFilename, {
DateTime? timestamp,
String? suffix,
}) {
final ts = timestamp ?? DateTime.now();
final tsString = '${ts.year}${ts.month.toString().padLeft(2, '0')}'
'${ts.day.toString().padLeft(2, '0')}_'
'${ts.hour.toString().padLeft(2, '0')}'
'${ts.minute.toString().padLeft(2, '0')}'
'${ts.second.toString().padLeft(2, '0')}';
final parts = originalFilename.split('.');
if (parts.length > 1) {
final extension = parts.removeLast();
final basename = parts.join('.');
final suffixPart = suffix != null ? '_$suffix' : '';
return '$basename.$tsString$suffixPart.$extension';
} else {
final suffixPart = suffix != null ? '_$suffix' : '';
return '$originalFilename.$tsString$suffixPart';
}
}