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();
}