yanghb
2024-12-24 fe6e43d5e1144156d0ca4e9d6080c9821c25d97c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
package com.zzg.common.utils.enums;
 
import lombok.AllArgsConstructor;
import lombok.NoArgsConstructor;
 
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
 
/**
 * 文件后缀信息和编码对应
 */
@NoArgsConstructor
@AllArgsConstructor
public enum FileHeadEnum {
    JPG("JPG", Arrays.asList("FFD8FFE0", "FFD8FFE1")),
    //FFD8FFE000104A46
    JPEG("JPEG", Arrays.asList("FFD8FFE0")),
    PNG("PNG", Arrays.asList("89504E47")),
    PDF("PDF", Arrays.asList("25504446")),
    ZIP("ZIP", Arrays.asList("504B0304")),
 
    //D0CF11E0A1B11AE1
    //D0CF11E0A1B11AE1
    DOC("DOC", Arrays.asList("D0CF11E0")),
    XLS("XLS", Arrays.asList("D0CF11E0")),
 
    //504B03040A000000
    //504B030414000000
    DOCX("DOCX", Arrays.asList("504B0304")),
    XLSX("XLSX", Arrays.asList("504B0304")),
    DWG("DWG", Arrays.asList("41433130")),
 
    /**
     * 空间数据八个类型
     */
    CPG("CPG", Arrays.asList("5554462D")),
    //037B0A0C
    //037B0A0C
    //037B090F
    //8315071A
    DBF("DBF", Arrays.asList("037B0A0C", "037B090F", "8315071A")),
    PRJ("PRJ", Arrays.asList("50524F4A")),
    SBN("SBN", Arrays.asList("0000270A")),
    SBX("SBX", Arrays.asList("0000270A")),
    SHP("SHP", Arrays.asList("0000270A")),
    //3C3F786D
    //3C6D6574
    XML("XML", Arrays.asList("3C4C6963", "3C3F786D", "3C6D6574")),
    SHX("SHX", Arrays.asList("0000270A")),
    MP4("MP4", new ArrayList<>()),
    ;
 
    public static String getSuffixByCode(String code) {
        for (FileHeadEnum v : FileHeadEnum.values()) {
            if (v.code.contains(code.toUpperCase())) {
                return v.suffix;
            }
        }
        return "";
    }
 
    String suffix;
    List<String> code;
 
}