guess_type: Guess the MIME types from filenames

View source: R/mime.R

guess_typeR Documentation

Guess the MIME types from filenames

Description

Look up in the mimemap table for the MIME types based on the extensions of the given filenames.

Usage

guess_type(
  file,
  unknown = "application/octet-stream",
  empty = "text/plain",
  mime_extra = mimeextra,
  subtype = ""
)

Arguments

file

a character vector of filenames, or filename extensions

unknown

the MIME type to return when the file extension was not found in the table

empty

the MIME type for files that do not have extensions

mime_extra

a named character vector of the form c(extension = type) providing extra MIME types (by default, mimeextra); note this MIME table takes precedence over the standard table mimemap

subtype

a character vector of MIME subtypes, which should be of the same length as file if provided (use an empty character string for a file if we do not want a subtype for it)

Examples

library(mime)
# well-known file types
guess_type(c("a/b/c.html", "d.pdf", "e.odt", "foo.docx", "tex"))
# not in the standard table, but in mimeextra
guess_type(c("a.md", "b.R"), mime_extra = NULL)
guess_type(c("a.md", "b.R"))

# override the standard MIME table (tex is text/x-tex by default)
guess_type("tex", mime_extra = c(tex = "text/plain"))
# unknown extension 'bar'
guess_type("foo.bar")
# force unknown types to be plain text
guess_type("foo.bar", unknown = "text/plain")

# empty file extension
guess_type("Makefile")
# we know it is a plain text file
guess_type("Makefile", empty = "text/plain")

# subtypes
guess_type(c("abc.html", "def.htm"), subtype = c("charset=UTF-8", ""))

yihui/mime documentation built on Aug. 27, 2022, 2:41 a.m.