convertAllExtensionsToCamelCase method
将所有扩展名层级转换为驼峰形式
sleep.abc.png→sleepAbcPngsleep.as.a12.png→sleepAsA12Png
Implementation
String convertAllExtensionsToCamelCase(String filePath) {
if (filePath.isEmpty) return filePath;
final normalizedPath = filePath.replaceAll(r'\', '/');
final lastSlashIndex = normalizedPath.lastIndexOf('/');
final fileName = lastSlashIndex == -1
? normalizedPath
: normalizedPath.substring(lastSlashIndex + 1);
if (fileName.isEmpty || !fileName.contains('.')) {
return filePath; // 无扩展名
}
// 分割文件名和目录
final dir = lastSlashIndex == -1
? ''
: normalizedPath.substring(0, lastSlashIndex + 1);
final parts = fileName.split('.');
// 处理每个部分(首字母大写)
final camelCaseName = parts.map((part) {
if (part.isEmpty) return '';
return part[0].toUpperCase() + part.substring(1);
}).join();
return dir + camelCaseName;
}