W przypadku starszych dokumentów * .doc wystarczyło:
header("Content-Type: application/msword");
Jakiego typu MIME powinienem używać do nowych dokumentów docx? Także dla dokumentów pptx i xlsx?
excel
ms-word
ms-office
powerpoint
mime-types
Richard Knop
źródło
źródło
file -bi YOUR_FILE
JPEG image data, EXIF standard
-i
flagi to--mime
.image/jpeg; charset=binary
gdzieimage/jpeg
jest typ MIME.Odpowiedzi:
Oto prawidłowe typy MIME pakietu Microsoft Office do strumieniowego przesyłania treści HTTP:
Aby uzyskać więcej informacji, sprawdź ten artykuł TechNet i ten post na blogu .
źródło
Alternatywnie, jeśli pracujesz w .Net v4.5 lub nowszym, spróbuj użyć System.Web.MimeMapping.GetMimeMapping (twojaPlikNazwa), aby uzyskać typy MIME - znacznie lepsze niż ciągi kodujące na stałe
źródło
Oto (prawie) pełne rozszerzenie MIME rozszerzeń plików w formacie JSON. Po prostu zrób przykład: MIME [„ppt”], MIME [„docx”] itp
źródło
W tym poście zostaną omówione różne podejścia do pobierania typu MIME w różnych językach programowania z ich CONS w opisie w jednym wierszu jako nagłówkiem. Więc używaj ich odpowiednio i tego, który działa dla ciebie.
Na przykład poniższy kod jest szczególnie pomocny, gdy użytkownik może podać jeden z .xls, .xlsx lub .xlsm, a nie chcesz pisać rozszerzenia testującego kod i podać typu MIME dla każdego z nich. Pozwól systemowi wykonać tę pracę.
Python 3
Używanie magii python
Korzystanie z wbudowanego modułu mimeypes - Odwzoruj nazwy plików na moduły MimeTypes
JAVA 7
Źródło: blog Baeldung na temat typów plików MIME w Javie
Zależny od systemu operacyjnego
Użyje implementacji FileTypeDetector do sondowania typu MIME i wywołuje probeContentType każdej implementacji w celu rozwiązania tego typu. Dlatego jeśli plik jest znany implementacjom, zwracany jest typ zawartości. Jeśli jednak tak się nie stanie, wywoływany jest domyślny systemowy wykrywacz typów plików.
Rozwiąż za pomocą pierwszych kilku znaków strumienia wejściowego
Korzystanie z wbudowanej tabeli typów MIME
Zwraca macierz typów MIME używanych przez wszystkie instancje URLConnection, która jest następnie używana do rozwiązania typu pliku wejściowego. Jednak ta macierz typów MIME jest bardzo ograniczona, jeśli chodzi o URLConnection.
Domyślnie klasa używa pliku content-types.properties w JRE_HOME / lib. Możemy go jednak rozszerzyć, określając tabelę specyficzną dla użytkownika za pomocą właściwości content.types.user.table:
JavaScript
Źródło: Artykuł FileReader API i medium na temat używania Magicznych liczb w JavaScript do uzyskiwania typów Mime
Interpretuj liczbę magiczną pobraną za pomocą interfejsu API FileReadera
Ostateczny wynik wygląda mniej więcej tak, gdy używa się javaScript, aby pobrać MimeType na podstawie strumienia plików. Otwórz osadzony jsFiddle, aby zobaczyć i zrozumieć to podejście.
Bonus : jest dostępny dla większości typów MIME, a także można dodawać niestandardowe typy MIME w funkcji getMimetype . Ma także PEŁNE WSPARCIE dla typów MIME plików MS Office.
Kroki obliczania typu MIME dla pliku w tym przykładzie byłyby następujące:
Obsługa przeglądarek (ponad 95% ogólnie i prawie 100% we wszystkich nowoczesnych przeglądarkach) :
Pokaż fragment kodu
źródło
Jeśli ktoś chce odpowiedzi Dirka Vollmara w instrukcji C # switch:
źródło
Aby załadować plik docx
źródło
Swift4
źródło
Działająca metoda w Androidzie do wypełniania typów mimów listy mapowania.
źródło
Wystarczy spojrzeć na MDN Web Docs .
Oto lista typów MIME, powiązanych według rodzaju dokumentów, uporządkowanych według ich wspólnych rozszerzeń:
Typowe typy MIME
źródło