modeString 方法
将模式值转换为可读字符串。
字符串格式为 "rwxrwxrwx",反映用户、组和对世界对象读取、写入和执行的权限,用 "-" 替换缺少的权限字母。额外的权限位可能通过在模式字符串前添加 "(suid)"、"(guid)" 和/或 "(sticky)" 来表示。
实现
String modeString() {
var permissions = mode & 0xFFF;
var codes = const ['---', '--x', '-w-', '-wx', 'r--', 'r-x', 'rw-', 'rwx'];
var result = [];
if ((permissions & 0x800) != 0) result.add("(suid) ");
if ((permissions & 0x400) != 0) result.add("(guid) ");
if ((permissions & 0x200) != 0) result.add("(sticky) ");
result
..add(codes[(permissions >> 6) & 0x7])
..add(codes[(permissions >> 3) & 0x7])
..add(codes[permissions & 0x7]);
return result.join();
}