aboutsummaryrefslogtreecommitdiff
path: root/files/ja/web/api/file/index.html
blob: 578692cbe24bde167b6c3f675c6656b127621b3e (plain)
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
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
---
title: File
slug: Web/API/File
tags:
  - API
  - File API
  - Interface
  - Reference
  - Web
translation_of: Web/API/File
---
<div>{{APIRef}}</div>

<p><strong><code>File</code></strong> インターフェイスは、ファイルについての情報を提供したり、ウェブページ内の JavaScript からその内容にアクセスできるようにしたりします。</p>

<p><code>File</code> オブジェクトは通常、 {{HTMLElement("input")}} 要素を使用してファイルを選択した結果として返される {{DOMxRef("FileList")}} オブジェクト、ドラッグ&ドロップ操作の {{DOMxRef("DataTransfer")}} オブジェクト、または {{DOMxRef("HTMLCanvasElement")}} 上の <code>mozGetAsFile()</code> API から取得します。</p>

<p><code>File</code> オブジェクトは特別な種類の {{domxref("Blob")}} オブジェクトであり、 Blob が利用できる場面ではどこでも利用できます。特に、{{DOMxRef("FileReader")}}{{DOMxRef("URL.createObjectURL()")}}{{DOMxRef("ImageBitmapFactories.createImageBitmap()", "createImageBitmap()")}}{{DOMxRef("XMLHttpRequest", "", "send()")}} は、<code>Blob</code><code>File</code> の両方を受け付けます。</p>

<p>詳しい情報や例は、<a href="/ja/docs/Web/API/File/Using_files_from_web_applications">ウェブアプリケーションからのファイルの使用</a> を参照してください。</p>

<p>{{InheritanceDiagram}}</p>

<h2 id="Constructor" name="Constructor">コンストラクター</h2>

<dl>
 <dt>{{DOMxRef("File.File", "File()")}}</dt>
 <dd>新しく構築された <code>File</code> オブジェクトを返します。</dd>
</dl>

<h2 id="Instance_properties" name="Instance_properties">インスタンスプロパティ</h2>

<dl>
 <dt>{{DOMxRef("File.prototype.lastModified")}} {{ReadOnlyInline}}</dt>
 <dd>ファイルの最終更新時刻を、 UNIX 元期 (1970年1月1日深夜) からの経過ミリ秒数で返します。</dd>
 <dt>{{DOMxRef("File.prototype.lastModifiedDate")}} {{Deprecated_Inline}} {{ReadOnlyInline}}</dt>
 <dd><code>File</code> オブジェクトが参照しているファイルの最終更新時刻の {{JSxRef("Date")}} を返します。</dd>
 <dt>{{DOMxRef("File.prototype.name")}}{{ReadOnlyInline}}</dt>
 <dd><code>File</code> オブジェクトが参照しているファイルの名前を返します。</dd>
 <dt>{{DOMxRef("File.prototype.webkitRelativePath")}} {{Non-standard_Inline}} {{ReadOnlyInline}}</dt>
 <dd>{{DOMxRef("File")}} の URL の相対パスを返します。</dd>
</dl>

<p><code>File</code>{{DOMxRef("Blob")}} を実装しているので、以下のようなプロパティも利用できます。</p>

<dl>
 <dt>{{DOMxRef("File.prototype.size")}} {{ReadOnlyInline}}</dt>
 <dd>ファイルのサイズをバイト単位で返します。</dd>
 <dt>{{DOMxRef("File.prototype.type")}} {{ReadOnlyInline}}</dt>
 <dd>ファイルの <a href="/ja/docs/Web/HTTP/Basics_of_HTTP/MIME_types">MIME</a> タイプを返します。</dd>
</dl>

<h2 id="Instance_methods" name="Instance_methods">インスタンスメソッド</h2>

<p><em><code>File</code> インターフェイスはメソッドを定義せず、{{DOMxRef("Blob")}} インターフェイスからメソッドを継承しています。</em></p>

<dl>
 <dt>{{DOMxRef("Blob.prototype.slice()", "Blob.prototype.slice([start[, end[, contentType]]])")}}</dt>
 <dd>ソース <code>Blob</code> の指定したバイト数の範囲のデータを含む新しい <code>Blob</code> オブジェクトを返します。</dd>
 <dt>{{DOMxRef("Blob.prototype.stream()")}}</dt>
 <dd><code>File</code>{{DOMxRef("ReadableStream")}} に変換し、<code>File</code> の内容を読み込めるようにします。</dd>
 <dt>{{DOMxRef("Blob.prototype.text()")}}</dt>
 <dd><code>File</code> をストリームに変換し、最後まで読み込みます。これは、{{DOMxRef("USVString")}} (テキスト) で解決するプロミスを返します。</dd>
 <dt>{{DOMxRef("Blob.prototype.arrayBuffer()")}}</dt>
 <dd><code>File</code> をストリームに変換し、最後まで読み込みます。 {{DOMxRef("ArrayBuffer")}} で解決するプロミスを返します。</dd>
</dl>

<h2 id="Specifications" name="Specifications">仕様書</h2>

<table class="standard-table">
 <thead>
  <tr>
   <th scope="col">仕様書</th>
   <th scope="col">状態</th>
   <th scope="col">備考</th>
  </tr>
 </thead>
 <tbody>
  <tr>
   <td>{{SpecName('File API')}}</td>
   <td>{{Spec2('File API')}}</td>
   <td>初回定義</td>
  </tr>
 </tbody>
</table>

<h2 id="Browser_compatibility" name="Browser_compatibility">ブラウザーの互換性</h2>

<p class="hidden">このページの互換性一覧表は構造化データから生成されています。データに協力していただけるのであれば、 <a class="external" href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> をチェックアウトしてプルリクエストを送信してください。</p>

<p>{{Compat("api.File")}}</p>

<h2 id="See_also" name="See_also">関連情報</h2>

<ul>
 <li><a href="/ja/docs/Web/API/File/Using_files_from_web_applications">ウェブアプリケーションからのファイルの使用</a></li>
 <li>{{domxref("FileReader")}}</li>
 <li><a href="/ja/docs/Extensions/Using_the_DOM_File_API_in_chrome_code">DOM File API を chrome code で使う</a> (Firefox アドオンのような Gecko で実行される特権コード向け)</li>
</ul>