traverseAndReplaceText function
遍历指定目录及其子目录,并替换文件中的指定文本。
Implementation
Future<void> traverseAndReplaceText(
String rootDir,
String targetText,
String replacementText,
) async {
final directory = Directory(rootDir);
// 如果传入的目录不存在,抛出异常
if (!await directory.exists()) {
throw Exception("目录不存在: $rootDir");
}
// 遍历目录下的所有文件和子目录
await for (var entity in directory.list(
recursive: true,
followLinks: false,
)) {
if (entity is File) {
await _replaceTextInFile(entity, targetText, replacementText);
}
}
}