WEBアプリケーションでは、ファイルのアップロードやダウンロード、編集などのやりとりが盛んに行われています。開発に関わるエンジニアとしては、ファイルなどのデータを適切に扱うことができるかどうかでレベルが分かれるとも言われています。
今回はJavaScriptでファイルを扱う際に使用するFile APIについて解説します。
File APIとは
ファイルについての情報を提供したり、JavaScriptからその内容にアクセスできるようにするなど、ファイルを操作するための機能の集まりです。
ファイルを操作する機能には、ファイルのサイズを取得したり、ファイルの中身を表示するものが含まれています。
File APIの使用ケース
・ローカルファイルをアップロードする際にファイル形式のチェックを行う
・ローカルファイルをアップロードする前にプレビューを表示する
・ブラウザでファイルを解析する
・WEB上にある画像などのファイルをインポートする
など
FIleListオブジェクトの取得
File APIを使用して、ファイルの情報を取得するサンプルコードです。
■ HTML
<form action="">
<input type="file" id="fileUpload">
</form>
■ JavaScript
const fileInput = document.getElementById('fileUpload');
// ファイルが選択された時
fileInput.addEventListener('change', function(e) {
const target = e.target;
const file = target.files;
// FileListの表示
console.log(file);
});
■ 出力結果
上記の処理では、ローカルマシンからアップロードされたファイルのデータを取得しました。ファイルへのアクセスはfilesプロパティで参照することができます。
FileListオブジェクの中身
lastModifiedDate: ファイルの最終更新日
name: ファイル名
size: ファイルのサイズ(byte)
type: ファイルのMIMEタイプ
MIMEタイプとは、メディアタイプの略称で文章、ファイル、またはバイト別の性質や形式を示す標準です。
今回はローカルファイルのファイルデータを取得する記述を紹介しましたが、その他にも拡張子チェックを行ったり、URLから画像をダウンロードしてファイルを取り込むなど様々な用途で活用することができます。
■ Files APIを使用した拡張子チェック : /javascript/extension-check
本記事の参考先 : https://developer.mozilla.org/ja/docs/Web/API/File
コメント