情報アイランド

「情報を制する者は世界を制す」をモットーに様々な情報を提供することを目指すブログです。現在はプログラミング関連情報が多めですが、投資関連情報も取り扱っていきたいです。

Node.jsでMIMEタイプから文字コードを取得する

2016/08/10

MIMEタイプから文字コードを取得するにはMIMEタイプをパースする必要があります。

MIMEタイプをパースするにはmimelibモジュールのmimelib.parseHeaderLine関数を使用します。

var mimelib = require('mimelib');

var m = mimelib.parseHeaderLine('xxx');

第1引数にMIMEタイプを指定します。

返り値としてMIMEタイプをパースした結果がオブジェクトとして得られます。

MIMEタイプの文字コードはこのオブジェクトのcharsetプロパティに格納されています。

ただし、文字コードが指定されていないMIMEタイプを指定した場合にはundefinedとなります。

なお、この関数はMIMEタイプをパースするだけのものなので、存在しない文字コードが指定されているMIMEタイプを指定した場合であってもその文字コードがそのまま返ることに注意してください。

サンプルコード1

mimelib-charset.js

var mimelib = require('mimelib');

console.log(mimelib.parseHeaderLine('text/html').charset);
console.log(mimelib.parseHeaderLine('text/plain; charset=uft-8').charset);
console.log(mimelib.parseHeaderLine('text/plain; charset=Shift_JIS').charset);
console.log(mimelib.parseHeaderLine('text/plain; charset=tennis').charset);

使用パッケージ

  • mimelib
    npm install mimelibでインストールします。

実行結果

C:\work\node>node mimelib-charset.js
undefined
uft-8
Shift_JIS
tennis

関連

pizyumi
プログラミング歴19年のベテランプログラマー。業務システム全般何でも作れます。現在はWeb系の技術を勉強中。
スポンサーリンク

-Node.js