getFileIconBySuffix static method

Icon getFileIconBySuffix(
  1. String fileName, {
  2. String? fileType,
})

根据文件的后缀名获取文件的图标

Implementation

static Icon getFileIconBySuffix(String fileName, {String? fileType}) {
  var type = fileName.split('.').last.toLowerCase();
  int iconName = 0xe858;
  Color color = const Color(0xFFFFD23D);
  if ('folder' == fileType) {
    iconName = 0xe622;
    color = const Color(0xFFFFD23D);
  } else {
    if (type == 'doc' || type == 'docx') {
      iconName = 0xe885;
      color = const Color(0xFF4D97FF);
    } else if (type == 'xls' || type == 'xlsx' || type == 'csv') {
      iconName = 0xedde;
      color = const Color(0xFF63C421);
    } else if (type == 'ppt' || type == 'pptx') {
      iconName = 0xe859;
      color = const Color(0xFFFF9743);
    } else if (type == 'cd' ||
        type == 'wave' ||
        type == 'aiff' ||
        type == 'wma' ||
        type == 'mpeg' ||
        type == 'mp3' ||
        type == 'wma' ||
        type == 'au' ||
        type == 'midi' ||
        type == 'realAudio' ||
        type == 'ape' ||
        type == 'aac') {
      iconName = 0xe6ed;
      color = const Color(0xFF8183F1);
    } else if (type == 'wmv' ||
        type == 'asf' ||
        type == 'asx' ||
        type == 'rm' ||
        type == 'rmvb' ||
        type == 'mp4' ||
        type == 'mov' ||
        type == 'm4v' ||
        type == 'avi' ||
        type == 'dat' ||
        type == 'mkv' ||
        type == 'flv' ||
        type == 'vob') {
      iconName = 0xe665;
      color = const Color(0xFF8183F1);
    } else if (type == 'pdf') {
      iconName = 0xe85b;
      color = const Color(0xFFFF5B5A);
    } else if (type == 'zip' ||
        type == 'rar' ||
        type == 'arj' ||
        type == 'jar' ||
        type == 'iso' ||
        type == 'uue' ||
        type == 'gz' ||
        type == 'tar' ||
        type == 'ace' ||
        type == 'cab' ||
        type == '7z' ||
        type == 'z') {
      iconName = 0xe85a;
      color = const Color(0xFF54C7F7);
    } else if (type == 'png' ||
        type == 'jpg' ||
        type == 'jpeg' ||
        type == 'bmp' ||
        // type == 'heic' ||
        type == 'gif') {
      iconName = 0xe62e;
      color = const Color(0xFFFF7743);
    } else if (type == 'txt') {
      iconName = 0xe858;
      ;
      color = const Color(0xFF4D97FF);
    } else {
      iconName = 0xe858;
      ;
      color = Colors.grey;
    }
  }
  return getIconFont(iconName, color, 33);
}