| パッケージ | flash.filesystem |
| クラス | public class File |
| 継承 | File FileReference EventDispatcher Object |
| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
File クラスには、ファイルシステムについての情報の取得と、操作の実行 (ファイルおよびディレクトリのコピーなど) のためのプロパティとメソッドが用意されています。
File オブジェクトを FileStream クラスと組み合わせて使用すると、ファイルの読み取りと書き込みを行うことができます。
File クラスは FileReference クラスを拡張します。FileReference クラス(Flash® Player および Adobe® AIR® で利用可能)はファイルへのポインタを表しますが、File クラスには、セキュリティ上の考慮事項により Flash Player(ブラウザで実行している SWF)上では公開されない追加のプロパティおよびメソッドがあります。
File クラスには、共通的に使用されるディレクトリの場所を参照するための静的プロパティがあります。それらのプロパティを次に示します。
File.applicationStorageDirectory - インストールされている各 AIR アプリケーションごとに固有の記憶領域ディレクトリFile.applicationDirectory - アプリケーションがインストールされている(インストールされるアセットがある場合はそれらも含まれる)読み取り専用ディレクトリFile.desktopDirectory - ユーザーのデスクトップディレクトリです。File.documentsDirectory - ユーザーのドキュメントディレクトリです。File.userDirectory - ユーザーディレクトリこれらのプロパティには、オペレーティングシステムに応じた意味のある値が設定されています。例えば、Mac OS、Linux および Windows では、ユーザーのデスクトップディレクトリを指すネイティブパスがそれぞれ次のように異なっています。こうした差異を反映して、File.desktopDirectory プロパティは、プラットフォームに応じた正しいデスクトップディレクトリパスを示すようになっています。異なるプラットフォームでも正しく動作するアプリケーションを作成するために、アプリケーションで他のファイルを使用する際は、これらのプロパティを起点としてください。その後、resolvePath() メソッドを使用してパスを調整します。例えば、次のコードでは、アプリケーション記憶領域ディレクトリ内の preferences.xml ファイルを参照しています。
var prefsFile:File = File.applicationStorageDirectory;
prefsFile = prefsFile.resolvePath("preferences.xml");ファイル参照時にネイティブパスをリテラル表記すると、そのコードは 1 つのプラットフォームでしか動作しないものになります。例えば、次の File オブジェクトは Windows 上でしか使用できません。
new File("C:\Documents and Settings\joe\My Documents\test.txt")アプリケーション記憶領域ディレクトリは特に有用性が高く、当該 AIR アプリケーション用に固有の記憶領域ディレクトリを示します。これは、File.applicationStorageDirectory プロパティで定義されています。
アプリケーションディレクトリは、当該 AIR アプリケーションがインストールされている場所なので、内容を追加したり削除したりしないでください。そのような変更を加えると、AIR アプリケーションが損傷し、アプリケーションの署名が無効になることがあります。AIR のデフォルト設定では、アプリケーションがそれ自体のアプリケーションディレクトリに書き込むことを認めていません。オペレーティングシステムとユーザーアカウントによっては、このディレクトリに対する書き込み許可がない場合があるためです。アプリケーション内部ファイルの書き込み場所としては、アプリケーション記憶領域ディレクトリを使用してください。また、当該アプリケーション以外でユーザーに使用されることを想定したファイル(たとえば、編集した画像やテキストファイルなど)の書き込み場所としては、ドキュメントディレクトリを使用してください。
関連項目
| プロパティ | 定義元 | ||
|---|---|---|---|
[静的] [読み取り専用]
インストールされたアプリケーションファイルが格納されているフォルダです。 | File | ||
[静的] [読み取り専用]
アプリケーションのプライベート記憶領域ディレクトリです。 | File | ||
![]() | constructor : Object
指定されたオブジェクトインスタンスのクラスオブジェクトまたはコンストラクタ関数への参照です。 | Object | |
![]() | creationDate : Date [読み取り専用]
ローカルディスク上に存在するファイルの作成日です。 | FileReference | |
![]() | creator : String [読み取り専用]
Macintosh クリエータタイプのファイルです。このファイルは、Mac OS X より前のバージョンの Mac OS でのみ使用されます。 | FileReference | |
![]() | data : ByteArray [読み取り専用]
ByteArray オブジェクトは、load() メソッドの呼び出しが成功した後の、ロードされたファイルのデータを表します。 | FileReference | |
[静的] [読み取り専用]
ユーザーのデスクトップディレクトリです。 | File | ||
[静的] [読み取り専用]
ユーザーのドキュメントディレクトリです。 | File | ||
[読み取り専用]
参照先のファイルまたはディレクトリが存在するかどうかを示します。 | File | ||
![]() | [読み取り専用]
ファイル名拡張子です。 | FileReference | |
[読み取り専用]
ファイルに対して定義されたアイコンを格納している Icon オブジェクトです。 | File | ||
[読み取り専用]
参照先がディレクトリであるかどうかを示します。 | File | ||
[読み取り専用]
参照先のファイルまたはディレクトリが "非表示" かどうかを示します。値は、参照先のファイルまたはディレクトリが非表示の場合は true、それ以外の場合は false です。 | File | ||
[読み取り専用]
参照先のディレクトリがパッケージであるかどうかを示します。 | File | ||
[読み取り専用]
参照がシンボリックリンクであるかどうかを示します。 | File | ||
[静的] [読み取り専用]
ホストオペレーティングシステムで使用される行終了文字です。 | File | ||
![]() | modificationDate : Date [読み取り専用]
ローカルディスク上に存在するファイルの最終変更日です。 | FileReference | |
![]() | name : String [読み取り専用]
ローカルディスク上に存在するファイルの名前です。 | FileReference | |
ホストオペレーティングシステムの表現形式に従った完全パスです。 | File | ||
[読み取り専用]
この File オブジェクトによって参照されているファイルまたはディレクトリを格納しているディレクトリです。 | File | ||
![]() | prototype : Object [静的]
クラスまたは関数オブジェクトのプロトタイプオブジェクトへの参照です。 | Object | |
[静的] [読み取り専用]
ホストオペレーティングシステムのパスコンポーネントの区切り文字です。 | File | ||
![]() | size : Number [読み取り専用]
ローカルディスク上に存在するファイルのサイズ (バイト単位) です。 | FileReference | |
[読み取り専用]
この File の場所で使用可能な領域 (バイト)。 | File | ||
[静的] [読み取り専用]
ホストオペレーティングシステムで使用されるデフォルトのエンコーディングです。 | File | ||
![]() | type : String [読み取り専用]
ファイル形式です。 | FileReference | |
このファイルパスの URL です。 | File | ||
[静的] [読み取り専用]
ユーザーのディレクトリです。 | File | ||
| メソッド | 定義元 | ||
|---|---|---|---|
File クラスのコンストラクタ関数です。 | File | ||
![]() | addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
イベントリスナーオブジェクトを EventDispatcher オブジェクトに登録し、リスナーがイベントの通知を受け取るようにします。 | EventDispatcher | |
![]() |
アップロードするファイルを選択できるファイル参照ダイアログボックスを表示します。 | FileReference | |
ディレクトリ選択ダイアログボックスを表示して、ユーザーがディレクトリを選択できるようにします。 | File | ||
ファイルを開くダイアログボックスを表示して、ユーザーが開くファイルを選択できるようにします。 | File | ||
ファイルを開くダイアログボックスを表示して、ユーザーが開くファイルを 1 つ以上選択できるようにします。 | File | ||
ファイルの保存ダイアログボックスを表示して、ユーザーがファイルの保存先を選択できるようにします。 | File | ||
[override]
保留中の非同期処理をキャンセルします。 | File | ||
File のパスを標準化します。 | File | ||
この File オブジェクトのコピーを返します。 | File | ||
この File オブジェクトで指定された場所にあるファイルまたはディレクトリを、newLocation パラメータで指定された場所にコピーします。 | File | ||
この File オブジェクトで指定された場所にあるファイルまたはディレクトリを、destination パラメータで指定された場所にコピーする処理を開始します。 | File | ||
指定されたディレクトリおよび必要な親ディレクトリを作成します。 | File | ||
[静的]
新しい一時ディレクトリへの参照を返します。 | File | ||
[静的]
新しい一時ファイルへの参照を返します。 | File | ||
ディレクトリを削除します。 | File | ||
ディレクトリを非同期で削除します。 | File | ||
ファイルを削除します。 | File | ||
ファイルを非同期で削除します。 | File | ||
![]() |
イベントをイベントフローに送出します。 | EventDispatcher | |
![]() |
リモートサーバーからファイルをダウンロードするためのダイアログボックスを開きます。 | FileReference | |
この File オブジェクトによって表されるディレクトリ内のファイルおよびディレクトリに対応する File オブジェクトの配列を返します。 | File | ||
この File オブジェクトによって表されるディレクトリの内容に対応する File オブジェクトの配列を非同期で取得します。 | File | ||
2 つの File パス間の相対パスを探します。 | File | ||
[静的]
ファイルシステムのルートディレクトリを列挙している File オブジェクトの配列を返します。 | File | ||
![]() |
EventDispatcher オブジェクトに、特定のイベントタイプに対して登録されたリスナーがあるかどうかを確認します。 | EventDispatcher | |
![]() |
オブジェクトに指定されたプロパティが定義されているかどうかを示します。 | Object | |
![]() |
Object クラスのインスタンスが、パラメータとして指定されたオブジェクトのプロトタイプチェーン内にあるかどうかを示します。 | Object | |
![]() |
ユーザーが選択したローカルファイルの読み込みを開始します。 | FileReference | |
この File オブジェクトで指定された場所にあるファイルまたはディレクトリを、destination パラメータで指定された場所に移動します。 | File | ||
この File オブジェクトで指定された場所にあるファイルまたはディレクトリを、newLocation パラメータで指定された場所に移動する処理を開始します。 | File | ||
ファイルまたはディレクトリをごみ箱に移動します。 | File | ||
ファイルまたはディレクトリを非同期でごみ箱に移動します。 | File | ||
![]() |
指定されたプロパティが存在し、列挙できるかどうかを示します。 | Object | |
![]() |
EventDispatcher オブジェクトからリスナーを削除します。 | EventDispatcher | |
path パラメータ(ストリング)に基づいて、この File オブジェクトのパスを基準とした相対的なパスを持つ新しい File オブジェクトを作成します。 | File | ||
![]() |
ローカルファイルシステムにファイルを保存するためのダイアログボックスを開きます。 | FileReference | |
![]() |
ループ処理に対するダイナミックプロパティの可用性を設定します。 | Object | |
![]() |
指定されたオブジェクトのストリング表現を返します。 | Object | |
![]() | upload(request:URLRequest, uploadDataFieldName:String = "Filedata", testUpload:Boolean = false):void
ユーザーが選択したファイルをリモートサーバーにアップロードする処理を開始します。 | FileReference | |
![]() |
ファイルをエンコードせずに URL へのアップロードを開始します。 | FileReference | |
![]() |
指定されたオブジェクトのプリミティブな値を返します。 | Object | |
![]() |
指定されたイベントタイプについて、この EventDispatcher オブジェクトまたはその祖先にイベントリスナーが登録されているかどうかを確認します。 | EventDispatcher | |
| イベント | 概要 | 定義元 | ||
|---|---|---|---|---|
![]() | [ブロードキャスト イベント] Flash Player または AIR アプリケーションがオペレーティングシステムのフォーカスを取得して、アクティブになったときに送出されます。 | EventDispatcher | ||
| 保留中の非同期処理がキャンセルされると、送出されます。 | File | |||
| 非同期処理が完了すると、送出されます。 | File | |||
![]() | [ブロードキャスト イベント] Flash Player または AIR アプリケーションがオペレーティングシステムのフォーカスを失って、非アクティブになったときに送出されます。 | EventDispatcher | ||
| getDirectoryListingAsync() メソッドを呼び出した結果、ディレクトリ一覧が得られると送出されます。 | File | |||
![]() | upload() または uploadUnencoded() メソッドを呼び出して HTTP を介してデータにアクセスを試み、Adobe AIR で要求のステータスコードを検出して返すことができる場合に送出されます。 | FileReference | ||
![]() | アップロードに失敗し、HTTP ステータスコードを使用して失敗を記述することができない場合に送出されます。 | FileReference | ||
| 非同期ファイル処理中にエラーが発生すると、送出されます。 | File | |||
![]() | アップロード処理またはダウンロード処理が開始するときに送出されます。 | FileReference | ||
![]() | ファイルのアップロード処理中またはダウンロード処理中に定期的に送出されます。 | FileReference | ||
| 操作がセキュリティ制約に違反していると、送出されます。 | File | |||
| ユーザーがファイルまたはディレクトリ参照ダイアログボックスからファイルまたはディレクトリを選択すると、送出されます。 | File | |||
| browseForOpenMultiple() メソッドの呼び出しによって開かれたダイアログボックスからユーザーがファイルを選択すると、送出されます。 | File | |||
![]() | アップロードの正常終了後、サーバーからデータを受信したときに送出されます。 | FileReference | ||
| プロパティ |
applicationDirectory:File [読み取り専用] | 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
インストールされたアプリケーションファイルが格納されているフォルダです。
このオブジェクトの url プロパティは、app URL スキーム(file URL スキームではない)を使用します。したがって、url ストリングの指定は "app:"("file:" ではない)で始めます。また、File.applicationDirectory ディレクトリを基準とする相対位置に(resolvePath() メソッドを使用して)File オブジェクトを作成すると、その File オブジェクトの url プロパティでも app URL スキームが使用されます。
メモ : app URL スキームを使用するパスを持つファイルまたはディレクトリに書き込むことはできません。また、app URL スキームを使用するパスを持つファイルやフォルダの削除または作成を行うこともできません。セキュリティ上の理由から、アプリケーションディレクトリの内容は変更しないでください。アプリケーション固有のデータを格納する必要がある場合は、アプリケーションの記憶領域ディレクトリ(File.applicationStorageDirectory)を使用することを検討してください。アプリケーションの記憶領域ディレクトリ内のコンテンツがアプリケーション特権機能(AIR API)にアクセスできるようにする必要がある場合は、サンドボックスブリッジを使用してその機能を公開します。
applicationDirectory プロパティを使用すると、異なるプラットフォームでも動作する方法でアプリケーションディレクトリを参照できます。アプリケーションディレクトリを参照するように File オブジェクトを設定する際、nativePath または url プロパティを直接に使用すると、そのパスが有効であるプラットフォーム上でしか動作しないコードになります。
public static function get applicationDirectory():File関連項目
| プロパティ |
applicationStorageDirectory:File [読み取り専用] | 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
アプリケーションのプライベート記憶領域ディレクトリです。
それぞれの AIR アプリケーションは、永続的な固有のアプリケーション記憶領域ディレクトリを持っています。このディレクトリは、File.applicationStorageDirectory に初めてアクセスしたときに作成されます。このディレクトリは、アプリケーション固有のデータを格納するために利用されます。
AIR アプリケーションをアンインストールする場合、アンインストーラではアプリケーション記憶領域ディレクトリに保存されたファイルは削除されません。
このオブジェクトの url プロパティは、app-storage URL スキーム(file URL スキームではない)を使用します。したがって、url ストリングの指定は "app-storage:"("file:" ではない)で始めます。また、File.applicationStoreDirectory ディレクトリを基準とする相対位置に(resolvePath() メソッドを使用して)File オブジェクトを作成すると、その File オブジェクトの url でも app-storage URL スキームが使用されます(例を参照)。
applicationStorageDirectory プロパティを使用すると、異なるプラットフォームでも動作する方法でアプリケーション記憶領域ディレクトリを参照できます。アプリケーション記憶領域ディレクトリを参照するように File オブジェクトを設定する際、nativePath または url プロパティを直接に使用すると、そのパスが有効であるプラットフォーム上でしか動作しないコードになります。
public static function get applicationStorageDirectory():File
import flash.filesystem.File;
var tempFiles:File = File.applicationStorageDirectory;
tempFiles = tempFiles.resolvePath("images/");
trace(tempFiles.url); // app-storage:/images| プロパティ |
desktopDirectory:File [読み取り専用] | 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
ユーザーのデスクトップディレクトリです。
desktopDirectory プロパティを使用すると、異なるプラットフォームでも動作する方法でデスクトップディレクトリを参照できます。デスクトップディレクトリを参照するように File オブジェクトを設定する際、nativePath または url プロパティを直接に使用すると、そのパスが有効であるプラットフォーム上でしか動作しないコードになります。
public static function get desktopDirectory():File
import flash.filesystem.File;
var desktop:File = File.desktopDirectory;
var files:Array = desktop.getDirectoryListing();
for (var i:uint = 0; i < files.length; i++) {
trace(files[i].nativePath);
}| プロパティ |
documentsDirectory:File [読み取り専用] | 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
ユーザーのドキュメントディレクトリです。
Windows では、これは My Documents ディレクトリ(例えば C:¥Documents and Settings\userName\My Documents)です。Mac OS では、デフォルトの場所は /Users/userName/Documents です。Linux のデフォルトの位置は /home/userName/Documents (英語システムの場合) で、プロパティは xdg-user-dirs 設定に従います。
documentsDirectory プロパティを使用すると、異なるプラットフォームでも動作する方法でドキュメントディレクトリを参照できます。ドキュメントディレクトリを参照するように File オブジェクトを設定する際、nativePath または url プロパティを直接に使用すると、そのパスが有効であるプラットフォーム上でしか動作しないコードになります。
public static function get documentsDirectory():FileFile.documentsDirectory プロパティと File.createDirectory() メソッドを使用して、ユーザーのドキュメントディレクトリに「AIR Test」という名前のディレクトリが確実に存在するようにしています。
import flash.filesystem.File;
var directory:File = File.documentsDirectory;
directory = directory.resolvePath("AIR Test");
File.createDirectory(directory);
trace(directory.exists); // true| プロパティ |
exists:Boolean [読み取り専用] | 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
参照先のファイルまたはディレクトリが存在するかどうかを示します。値は、File オブジェクトが既存のファイルまたはディレクトリを指している場合は true、それ以外の場合は false です。
public function get exists():BooleanFile.exists プロパティを使用して、このファイルが存在するかどうかを確認します。import flash.filesystem.*; var temp:File = File.createTempFile(); trace(temp.exists); // true temp.deleteFile(); trace(temp.exists); // false
| プロパティ |
icon:Icon [読み取り専用] | 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
ファイルに対して定義されたアイコンを格納している Icon オブジェクトです。Icon オブジェクトは、様々なアイコン状態に対応する BitmapData オブジェクトの配列です。 Linux では、Icon オブジェクトにアイコンは含まれていません。
public function get icon():Iconicon 配列内で高さが最大のイメージを探し、Bitmap オブジェクトをそのイメージに設定する方法を示しています。
import flash.filesystem.File;
import flash.display.*;
var directory:File = File.documentsDirectory;
var bitmaps:Array = directory.icon.bitmaps;
var bmpData:BitmapData = new BitmapData(1, 1);
for (var i:uint = 0; i < bitmaps.length; i++) {
if (bitmaps[i].height > bmpData.height) {
bmpData = directory.icon.bitmaps[i];
}
}
var iconBmp:Bitmap = new Bitmap(bmpData);| プロパティ |
isDirectory:Boolean [読み取り専用] | 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
参照先がディレクトリであるかどうかを示します。値は、File オブジェクトの参照先がディレクトリの場合は true、それ以外の場合は false です。
public function get isDirectory():BooleanisDirectory プロパティを使用して、(ファイルではなく) ディレクトリを参照している File オブジェクトだけを列挙します。
import flash.filesystem.*;
var userDirFiles:Array = File.userDirectory.getDirectoryListing();
for (var i:uint = 0; i < userDirFiles.length; i++) {
if (userDirFiles[i].isDirectory) {
trace(userDirFiles[i].nativePath);
}
} | プロパティ |
isHidden:Boolean [読み取り専用] | 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
参照先のファイルまたはディレクトリが "非表示" かどうかを示します。値は、参照先のファイルまたはディレクトリが非表示の場合は true、それ以外の場合は false です。
public function get isHidden():BooleanisHidden プロパティを使用して非表示のファイルおよびディレクトリを列挙します。
import flash.filesystem.*;
var userDirFiles:Array = File.userDirectory.getDirectoryListing();
for (var i:uint = 0; i < userDirFiles.length; i++) {
if (userDirFiles[i].isHidden) {
trace(userDirFiles[i].nativePath);
}
} | プロパティ |
isPackage:Boolean [読み取り専用] | 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
参照先のディレクトリがパッケージであるかどうかを示します。
値は、参照先のディレクトリがパッケージである場合は true、それ以外の場合は false です。File クラスでは、パッケージを直接作成することはできません。
true、そのファイルがディレクトリでない場合、存在しない場合、またはパッケージでない場合は false に設定されます。false に設定されます。 public function get isPackage():Boolean| プロパティ |
isSymbolicLink:Boolean [読み取り専用] | 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
参照がシンボリックリンクであるかどうかを示します。
値は、File オブジェクトがシンボリックリンクの場合は true、それ以外の場合は false です。File クラスでは、シンボリックリンクを直接作成することはできません。
シンボリックリンクを使用すると、ファイルが、ディスク上の別のファイルまたはディレクトリを参照できるようになります。シンボリックリンクは、エイリアス (Macintosh) およびショートカット (Windows) に似ていますが、同じではありません。エイリアスまたはショートカットは常に (ディレクトリではなく) ファイルとして報告され、エイリアスまたはショートカットの読み取りや書き込みを行っても、そのエイリアスまたはショートカットの参照先である元のファイルまたはディレクトリが影響を受けることはありません。これに対し、シンボリックリンクは、通常、参照先のファイルまたはディレクトリと同じように動作します。シンボリックリンクは、ファイルまたはディレクトリとして報告され、シンボリックリンクの読み取りや書き込みを行うと、シンボリックリンク自体ではなく、参照先のファイルまたはディレクトリが影響を受けます。ただし、シンボリックリンクを削除すると、リンクの対象ではなくリンクが削除されます。
シンボリックリンクは Mac® OS® および Windows® Vista® でサポートされています。さらに、Windows では、NTFS ファイルシステムで使用される接続点を参照している File オブジェクトの isSymbolicLink プロパティは true に設定されます。
public function get isSymbolicLink():Boolean| プロパティ |
lineEnding:String [読み取り専用] | 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
ホストオペレーティングシステムで使用される行終了文字です。
Mac OS および Linux では、これは改行文字(16 進の文字コード 0x0A)です。Windows では、復帰文字 (16 進の文字コード 0x0D) の後に改行文字 (16 進の文字コード 0x0A) が続いたものです。
public static function get lineEnding():Stringstr)をテキストファイルに書き込み、File.lineEnding 静的プロパティを使用して、改行文字のすべてのインスタンス(コードでは正規表現 /\n/g で表現)を、ホストオペレーティングシステムで推奨される行終了文字に置き換えます。
import flash.filesystem.*;
var str:String = "Hello\n" +
"World\n";
str = str.replace(/\n/g, File.lineEnding);
var file:File = File.documentsDirectory.resolvePath("AIR Test/test.txt");
var fileStream:FileStream = new FileStream();
fileStream.open(file, FileMode.WRITE);
fileStream.writeUTF(str);
fileStream.close();| プロパティ |
nativePath:String| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
ホストオペレーティングシステムの表現形式に従った完全パスです。Mac OS および Linux では、パス区切り文字としてスラッシュ(/)文字を使用します。ただし、Windows では、nativePath プロパティでパス区切り文字としてスラッシュ (/) を使用するか円記号 (¥) を使用するかを設定できます。AIR では、スラッシュが適切な円記号 (¥) 文字に自動で変換されます。
直接に nativePath プロパティを設定するコードを記述することは可能ですが、特定プラットフォーム上でしか動作しないコードになる可能性があることに注意してください。例えば、"C:\\Documents and Settings\\bob\\Desktop" などのネイティブパスは Windows でのみ有効です。それよりも、共通的に使用されるディレクトリを次の静的プロパティで参照するほうがはるかに望ましく、どのプラットフォームでも有効なコードを作成できます。
File.applicationDirectoryFile.applicationStorageDirectoryFile.desktopDirectoryFile.documentsDirectoryFile.userDirectoryresolvePath() メソッドを使用して、これらのディレクトリの相対パスを取得できます。
一部の Flex API(例えば SWFLoader クラスの source プロパティ)では、URL(File オブジェクトの url プロパティ)を使用します。ネイティブパス(nativePath プロパティ)は使用しません。
public function get nativePath():String public function set nativePath(value:String):voidSecurityError — 呼び出し元がアプリケーションのセキュリティサンドボックス内ではありません。
| |
ArgumentError — path のシンタックスが無効です。
|
nativePath プロパティと url プロパティの違いを表示します。コメントは、Windows コンピュータでの結果の例を示しています。import flash.filesystem.File; var docs:File = File.documentsDirectory; trace(docs.nativePath); // C:\Documents and Settings\turing\My Documents trace(docs.url); // file:///C:/Documents%20and%20Settings/turing/My%20Documents
| プロパティ |
parent:File [読み取り専用] | 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
この File オブジェクトによって参照されているファイルまたはディレクトリを格納しているディレクトリです。
parent プロパティは、参照先のファイルまたはディレクトリが存在しない場合でも、それを格納しているディレクトリを指す File オブジェクトを返します (そのディレクトリが存在しなくても返します)。
このプロパティは resolvePath("..") の戻り値と同じです。ただしルートディレクトリの親は null です。
public function get parent():Fileparent プロパティを使用して、一時ファイルを格納しているディレクトリを表示します。import flash.filesystem.File; var tempFile:File = File.createTempDirectory(); trace(tempFile.parent.nativePath); tempFile.deleteFile();
| プロパティ |
separator:String [読み取り専用] | 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
ホストオペレーティングシステムのパスコンポーネントの区切り文字です。
Mac OS およびLinux では、スラッシュ(/)文字です。Windows では、円記号 (\) です。
メモ:ストリングリテラル内で円記号文字を使用する場合は、円記号を 2 回入力してください(例:"directory\\file.ext")。ストリングリテラル内では、2 つの円記号によってストリング内の単一の円記号を表します。
public static function get separator():StringgetRelativePath() メソッドを使用してディレクトリとファイルとの間の相対パスを取得しています。このコードでは、File.separator 静的プロパティを使用して、パス内のスラッシュ (/) 文字をオペレーティングシステムによって使用される区切り文字に置き換えます。区切り文字は、Windows では円記号 (\) で、他のオペレーティング システムではスラッシュ文字です。
import flash.filesystem.File;
var directory:File = File.documentsDirectory.resolvePath("Apollo Test");
var file:File = File.documentsDirectory.resolvePath("Apollo Test/employees/bob/test.txt");
var relativePath:String = directory.getRelativePath(file); // employees/bob/test.txt
relativePath = relativePath.replace(/\//g, File.separator);
trace(relativePath); replace() メソッドでは、すべてのスラッシュ文字に一致させるために正規表現 /\//g を使用しています。 | プロパティ |
spaceAvailable:Number [読み取り専用] | 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.1 |
この File の場所で使用可能な領域 (バイト)。
File オブジェクトがディレクトリを参照する場合、spaceAvailable はファイルで使用できるディレクトリの領域を示します。File オブジェクトがファイルを参照する場合、spaceAvailable はファイルを拡張できる領域を示します。ファイルの場所が存在しない場合、spaceAvailable は 0 に設定されます。File オブジェクトがシンボリックリンクを参照する場合、spaceAvailable はシンボリックリンクが参照する位置で使用可能な領域を示します。
一般的に、ディレクトリまたはファイルで使用可能な領域は、ディレクトリまたはファイルを含むボリュームで使用可能な領域と同じです。ただし、使用可能な領域では、割り当ておよびディレクトリごとの制限が考慮される場合があります。
一般に、ボリュームにファイルまたはディレクトリを追加すると、ファイルの実際のサイズまたはディレクトリの内容のサイズよりも大きな領域が必要になります。例えば、オペレーティングシステムでは、インデックス情報を保存するための追加領域が必要になる場合があります。また、必要なディスクセクタにより追加領域が使用される場合があります。さらに、使用可能な領域は動的に変化します。したがって、報告されたすべての領域がファイル記憶域のために割り当てられることを期待するのは不可能です。
public function get spaceAvailable():Number| プロパティ |
systemCharset:String [読み取り専用] | 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
ホストオペレーティングシステムで使用されるデフォルトのエンコーディングです。
有効な値は、"windows-1252"、"shift-jis"、"cn-gb"、"iso-8859-1" などです。完全な一覧については、「サポートする文字セット」を参照してください。
この値は、FileStream クラスの readMultiByte() メソッドおよび writeMultiByte() メソッドで使用できます。
public static function get systemCharset():String関連項目
File.systemCharset 静的プロパティを charSet パラメータとして使用して、FileStream オブジェクトの readMultiByte() メソッドを呼び出します。
import flash.filesystem.File;
var file:File = File.documentsDirectory.resolvePath("AIR Test/test.txt");
var fileStream:FileStream = new FileStream();
fileStream.open(file, FileMode.READ);
var str:String = fileStream.readMultiByte(file.size, File.systemCharset);
trace(str); | プロパティ |
url:String| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
このファイルパスの URL です。
この URL スキームは、アプリケーションの記憶領域ディレクトリ内のパスへの参照である場合は "app-storage"、アプリケーションディレクトリ内のパスへの参照である場合は "app"、それ以外の場合は "file"です。
("%20" ではなく)空白文字を使用して、url プロパティに値を代入できます。この場合、AIR によってストリングが自動的にエンコードされます(例えば、スペースが "%20" に変換されます)。
public function get url():String public function set url(value:String):voidArgumentError — URL シンタックスが無効です。
| |
SecurityError — 呼び出し元がアプリケーションのセキュリティサンドボックス内ではありません。
|
関連項目
nativePath プロパティと url プロパティの違いを表示します。コメントは、Windows コンピュータでの結果の例を示しています。import flash.filesystem.File; var docs:File = File.documentsDirectory; trace(docs.nativePath); // C:\Documents and Settings\turing\My Documents trace(docs.url); // file:///C:/Documents%20and%20Settings/turing/My%20Documents
| プロパティ |
userDirectory:File [読み取り専用] | 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
ユーザーのディレクトリです。
Windows では、これは "My Documents" ディレクトリの親 (例えば C:¥Documents and Settings¥userName) です。Mac OS では、/Users/userName です。Linux では、/home/userName です。
userDirectory プロパティを使用すると、異なるプラットフォームでも動作する方法でユーザーディレクトリを参照できます。File オブジェクトの nativePath または url プロパティを直接に設定するコードは、そのパスが有効であるプラットフォーム上でしか動作しません。
public static function get userDirectory():File
import flash.filesystem.File;
var files:Array = File.userDirectory.listDirectory();
for (var i:uint = 0; i < files.length; i++) {
trace(files[i].nativePath);
}| () | コンストラクタ |
public function File(path:String = null)| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
File クラスのコンストラクタ関数です。
path 引数を渡した場合、File オブジェクトは指定されたパスを参照し、そのパスを反映するように nativePath プロパティと url プロパティが設定されます。
引数 path を渡してファイルパスを指定することは可能ですが、特定プラットフォーム上でしか動作しないコードになる可能性があることに注意してください。例えば、"C:\\\\Documents and Settings\\bob\\Desktop" のようなネイティブパスや "file:///C:/Documents%20and%20Settings/bob/Desktop" のような URL は、Windows 上でのみ有効です。それよりも、共通的に使用されるディレクトリを次の静的プロパティで参照するほうがはるかに望ましく、どのプラットフォームでも有効なコードを作成できます。
File.applicationDirectoryFile.applicationStorageDirectoryFile.desktopDirectoryFile.documentsDirectoryFile.userDirectoryその後、resolvePath() メソッドを使用して、これらのディレクトリの相対パスを取得できます。例えば、次のコードでは、アプリケーション記憶領域ディレクトリ内の settings.xml ファイルを指すように File オブジェクトをセットアップしています。
path:String (default = null) — ファイルのパスです。パスの指定には、URL を使用するか、またはネイティブの(プラットフォーム固有の)パス表記を使用します。
URL を指定する場合は、
ネイティブのパスを指定する場合、Windows では、円記号文字またはスラッシュ文字をパス区切り文字としてこの引数で使用できます。Mac OS および Linux では、スラッシュ文字を使用します。ネイティブのパス表記を使用する場合に有効な
ただし、この 2 つの例の場合は、 |
ArgumentError — path パラメータのシンタックスが無効です。
|
関連項目
| () | メソッド |
public function browseForDirectory(title:String):void| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
ディレクトリ選択ダイアログボックスを表示して、ユーザーがディレクトリを選択できるようにします。ユーザーがディレクトリを選択すると、select イベントが送出されます。target プロパティ (select イベントで指定) は、選択されたディレクトリを指している File オブジェクトです。
パラメータ
title:String — ダイアログボックスのタイトルバーに表示するストリングです。
|
cancel: — ファイルを開くダイアログボックスでユーザーが [キャンセル] をクリックすると、送出されます。 | |
select: — ユーザーがディレクトリを選択して、ディレクトリ選択ダイアログボックスを閉じると、送出されます。 |
関連項目
File.browseForDirectory() メソッドを使用して、ユーザーがディレクトリを選択できるようにしています。ディレクトリを選択すると、選択したディレクトリの内容が trace() の出力に列挙されます。
import flash.filesystem.File;
import flash.events.Event;
var directory:File = File.documentsDirectory;
try
{
directory.browseForDirectory("Select Directory");
directory.addEventListener(Event.SELECT, directorySelected);
}
catch (error:Error)
{
trace("Failed:", error.message);
}
function directorySelected(event:Event):void
{
directory = event.target as File;
var files:Array = directory.getDirectoryListing();
for(var i:uint = 0; i < files.length; i++)
{
trace(files[i].name);
}
}| () | メソッド |
public function browseForOpen(title:String, typeFilter:Array = null):void| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
ファイルを開くダイアログボックスを表示して、ユーザーが開くファイルを選択できるようにします。
ユーザーがファイルを選択すると、select イベントが送出されます。target プロパティ (select イベントで指定) は、選択されたファイルを指している File オブジェクトです。
パラメータ
title:String — ダイアログボックスのタイトルバーに表示するストリングです。
| |
typeFilter:Array (default = null) — ダイアログボックスに表示するファイルをフィルタにかける場合に使用する FileFilter インスタンスの配列です。このパラメータを省略すると、すべてのファイルが表示されます。詳細については、FileFilter クラスを参照してください。
|
cancel: — ファイルを開くダイアログボックスでユーザーが [キャンセル] をクリックすると、送出されます。 | |
select: — ユーザーがファイルを選択して、ファイルを開くダイアログボックスを閉じると、送出されます。 |
関連項目
File.browseForOpen() メソッドを使用して、ユーザーがテキストファイルを選択できるようにしています。ファイルを選択すると、ファイルのデータがストリングに読み込まれます。
import flash.filesystem.*;
import flash.events.Event;
import flash.net.FileFilter;
var fileToOpen:File = new File();
var txtFilter:FileFilter = new FileFilter("Text", "*.as;*.css;*.html;*.txt;*.xml");
try
{
fileToOpen.browseForOpen("Open", [txtFilter]);
fileToOpen.addEventListener(Event.SELECT, fileSelected);
}
catch (error:Error)
{
trace("Failed:", error.message);
}
function fileSelected(event:Event):void
{
var stream:FileStream = new FileStream();
stream.open(event.target, FileMode.READ);
var fileData:String = stream.readUTFBytes(stream.bytesAvailable);
trace(fileData);
}| () | メソッド |
public function browseForOpenMultiple(title:String, typeFilter:Array = null):void| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
ファイルを開くダイアログボックスを表示して、ユーザーが開くファイルを 1 つ以上選択できるようにします。
ユーザーがファイルを選択すると、selectMultiple イベントが送出されます。target プロパティ(select イベントで指定)は、この File オブジェクトです。browseForOpen() とは異なり、browseForOpenMultiple() メソッドを使用すると、この File オブジェクトは、選択されたファイルを参照するために更新されません。その代わり、結果として得られる selectMultiple イベントには、選択されたファイルの配列が格納されます。
パラメータ
title:String — ダイアログボックスのタイトルバーに表示するストリングです。
| |
typeFilter:Array (default = null) — ダイアログボックスに表示するファイルをフィルタにかける場合に使用する FileFilter インスタンスの配列です。このパラメータを省略すると、すべてのファイルが表示されます。詳細については、FileFilter クラスを参照してください。
|
cancel: — ファイルを開くダイアログボックスでユーザーが [キャンセル] をクリックすると、送出されます。 | |
selectMultiple: — ユーザーがファイルを選択して、ファイルを開くダイアログボックスを閉じると、送出されます。 |
関連項目
File.browseForOpenMultiple() メソッドを使用して、ユーザーが複数のファイルを選択できるようにしています。ファイルを選択すると、選択されたファイルのパスが出力されます。
import flash.filesystem.*;
import flash.events.FileListEvent;
var docsDir:File = File.documentsDirectory;
try
{
docsDir.browseForOpenMultiple("Select Files");
docsDir.addEventListener(FileListEvent.SELECT_MULTIPLE, filesSelected);
}
catch (error:Error)
{
trace("Failed:", error.message);
}
function filesSelected(event:FileListEvent):void
{
for (var i:uint = 0; i < event.files.length; i++)
{
trace(event.files[i].nativePath);
}
}| () | メソッド |
public function browseForSave(title:String):void| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
ファイルの保存ダイアログボックスを表示して、ユーザーがファイルの保存先を選択できるようにします。
ユーザーがファイルを選択すると、select イベントが送出されます。target プロパティ (select イベントで指定) は、選択された保存先を指している File オブジェクトです。
パラメータ
title:String — ダイアログボックスのタイトルバーに表示するストリングです。
|
cancel: — ファイルの保存ダイアログボックスでユーザーが [キャンセル] をクリックすると、送出されます。 | |
select: — ユーザーがファイルを選択して、ファイルの保存ダイアログボックスを閉じると、送出されます。 |
関連項目
File.browseForSave() メソッドを使用して、ユーザーがファイルを保存するためのパスを選択できるようにしています。ファイルを選択すると、選択したファイルパスにデータが保存されます。
import flash.filesystem.*;
import flash.events.Event;
var docsDir:File = File.documentsDirectory;
try
{
docsDir.browseForSave("Save As");
docsDir.addEventListener(Event.SELECT, saveData);
}
catch (error:Error)
{
trace("Failed:", error.message);
}
function saveData(event:Event):void
{
var newFile:File = event.target as File;
var str:String = "Hello.";
if (!newFile.exists)
{
var stream:FileStream = new FileStream();
stream.open(newFile, FileMode.WRITE);
stream.writeUTFBytes(str);
stream.close();
}
}
| () | メソッド |
| () | メソッド |
public function canonicalize():void| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
File のパスを標準化します。
File オブジェクトが既存のファイルまたはディレクトリを表している場合は、標準化によって、実際のファイル名またはディレクトリ名と大文字小文字が一致するようにパスが調整されます。File オブジェクトがシンボリックリンクである場合は、標準化によって、参照先のファイルまたはディレクトリが存在するかどうかにかかわらず、リンクが指しているファイルまたはディレクトリに一致するようにパスが調整されます。 Linux など大文字と小文字を区別するファイルシステムでは、大文字と小文字の区別のみが異なる複数のファイルが存在する場合、canonicalize() メソッドは、(ファイルシステムによって決められた順序で)最初に見つかったファイルに合わせてパスが調整します。
また、Windows では、標準化によって、短いファイル名が長いファイル名に変換されます。
canonicalize() メソッドを使用して、大文字小文字が区別された正しいディレクトリ名を確認する方法を示しています。この例を実行する前に、ローカルコンピュータのデスクトップ上に AIR Test という名前のディレクトリを作成してください。
import flash.filesystem.*;
var path:File = File.desktopDirectory.resolvePath("air test");
trace(path.nativePath);
path.canonicalize();
trace(path.nativePath); // ...\AIR Test
canonicalize() メソッドを使用して、Windows ディレクトリの短い名前に基づいて長い名前を確認する方法を示しています。この例では、C: ドライブのルートに AIR Test という名前のディレクトリが存在し、このディレクトリに対してシステムが短い名前 AIR~1 を割り当てていることを前提としています。import flash.filesystem.*; var path:File = new File(); path.nativePath = "C:\\AIR~1"; path.canonicalize(); trace(path.nativePath); // C:\AIR Test
| () | メソッド |
public function clone():File| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
この File オブジェクトのコピーを返します。イベント登録はコピーされません。
注意 : このメソッドでは、ファイル自体がコピーされるのではありません。 単に、ActionScript File オブジェクトのインスタンスのコピーが作成されるだけです。ファイルをコピーするには、copyTo() メソッドを使用します。
File |
| () | メソッド |
public function copyTo(newLocation:FileReference, overwrite:Boolean = false):void| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
この File オブジェクトで指定された場所にあるファイルまたはディレクトリを、newLocation パラメータで指定された場所にコピーします。コピー処理によって、可能な場合には必要な親ディレクトリが作成されます。
パラメータ
newLocation:FileReference — 新しいファイルの宛先の場所です。この File オブジェクトは、結果として得られる(コピーされる)ファイルまたはディレクトリを表すものであり、それを格納しているディレクトリへのパスを表すものではありません。
| |
overwrite:Boolean (default = false) — false の場合、target パラメータで指定されたファイルが既に存在すると、コピーが失敗します。true の場合は、同じ名前のファイルまたはディレクトリが存在すると、このファイルまたはディレクトリが上書きされます。
|
IOError — ソースが存在しないか、宛先が存在し、かつ overwrite が false であるか、ソースをターゲットにコピーできなかったか、またはソースおよび宛先が同じファイルまたはフォルダを参照し、かつ overwrite が true に設定されています。 Windows では、開いているファイルや、開いているファイルが格納されているディレクトリをコピーすることはできません。
|
関連項目
copyTo() メソッドを使用してファイルをコピーする方法を示しています。このコードを実行する前に、ローカルコンピュータのドキュメントディレクトリ内の AIR Test サブディレクトリに test1.txt というファイルを作成しておく必要があります。結果として得られるコピーファイルには test2.txt という名前が付けられ、同じ AIR Test サブディレクトリに置かれます。clobber パラメータを true に設定すると、test2.txt という名前の既存のファイルがあった場合はこのファイルが上書きされます。
import flash.filesystem.File;
import flash.events.Event;
var sourceFile:FileReference = File.documentsDirectory;
sourceFile = sourceFile.resolvePath("AIR Test/test1.txt");
var destination:FileReference = File.documentsDirectory;
destination = destination.resolvePath("AIR Test/test2.txt");
if (sourceFile.copyTo(destination, true)) {
trace("Done.");
}copyTo() メソッドを使用してファイルをコピーする方法を示しています。このコードを実行する前に、ローカルコンピュータのホームディレクトリ内の AIR Test サブディレクトリに test1.txt というファイルを作成しておく必要があります。結果として得られるコピーファイルには、test2.txt という名前が付けられます。try ステートメントと catch ステートメントは、エラーへの対処方法を示しています。
import flash.filesystem.File;
var sourceFile:File = File.documentsDirectory;
sourceFile = sourceFile.resolvePath("AIR Test/test1.txt");
var destination:File = File.documentsDirectory;
destination = destination.resolvePath("AIR Test/test2.txt");
try
{
sourceFile.copyTo(destination, true);
}
catch (error:Error)
{
trace("Error:", error.message);
}| () | メソッド |
public function copyToAsync(newLocation:FileReference, overwrite:Boolean = false):void| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
この File オブジェクトで指定された場所にあるファイルまたはディレクトリを、destination パラメータで指定された場所にコピーする処理を開始します。
完了後、complete イベント (成功) または ioError イベント (失敗) が送出されます。コピー処理によって、可能な場合には必要な親ディレクトリが作成されます。
パラメータ
newLocation:FileReference — 新しいファイルの宛先の場所です。この File オブジェクトは、結果として得られる(コピーされる)ファイルまたはディレクトリを表すものであり、それを格納しているディレクトリへのパスを表すものではありません。
| |
overwrite:Boolean (default = false) — false の場合、target ファイルで指定されたファイルが既に存在すると、コピーが失敗します。true の場合は、同じ名前のファイルまたはディレクトリが存在すると、このファイルまたはディレクトリが上書きされます。
|
complete: — ファイルまたはディレクトリが正常にコピーされると送出されます。 | |
ioError: — ソースが存在しないか、またはターゲットが存在し overwrite が false であるか、またはソースをターゲットにコピーできないか、またはソースとターゲットが同じファイルまたはフォルダを参照し overwrite が true に設定されています。Windows では、開いているファイルや、開いているファイルが格納されているディレクトリをコピーすることはできません。 |
関連項目
copyToAsync() メソッドを使用してファイルをコピーする方法を示しています。このコードを実行する前に、ローカルコンピュータのドキュメントディレクトリ内の AIR Test サブディレクトリに test1.txt というファイルを作成しておく必要があります。結果として得られるコピーファイルには test2.txt という名前が付けられ、同じ AIR Test サブディレクトリに置かれます。clobber パラメータを true に設定すると、test2.txt という名前の既存のファイルがあった場合はこのファイルが上書きされます。
import flash.filesystem.File;
import flash.events.Event;
var sourceFile:File = File.documentsDirectory;
sourceFile = sourceFile.resolvePath("AIR Test/test1.txt");
var destination:File = File.documentsDirectory;
destination = destination.resolvePath("AIR Test/test2.txt");
sourceFile.copyToAsync(destination, true);
sourceFile.addEventListener(Event.COMPLETE, fileCopiedHandler);
function fileCopiedHandler(event:Event):void {
trace("Done.");
}| () | メソッド |
public function createDirectory():void| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
指定されたディレクトリおよび必要な親ディレクトリを作成します。ディレクトリがすでに存在する場合は、何も行われません。
IOError — ディレクトリが存在せず、作成できませんでした。
|
createDirectory() メソッドを呼び出すことによって、ファイルを移動する前に AIR Test ディレクトリが作成されます。
import flash.filesystem.*;
var source:File = File.desktopDirectory.resolvePath("test.txt");
var target:File = File.documentsDirectory.resolvePath("AIR Test/test.txt");
var targetParent:File = target.parent;
targetParent.createDirectory();
source.moveTo(target, true);| () | メソッド |
public static function createTempDirectory():File| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
新しい一時ディレクトリへの参照を返します。これは、システムの一時ディレクトリパスに作成される新しいディレクトリです。
このメソッドを使用すると、新しい一意のディレクトリを指定できます。システムに照会してディレクトリが新規かつ一意であることを確認する必要はありません。
一時ディレクトリは自動では削除されないため、アプリケーションを閉じる前に削除することを検討してください。
戻り値File — 新しい一時ディレクトリを参照している File オブジェクト。
|
関連項目
createTempFile() メソッドを使用して新しい一時ディレクトリへの参照を取得します。import flash.File; var temp:File = File.createTempDirectory(); trace(temp.nativePath);
| () | メソッド |
public static function createTempFile():File| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
新しい一時ファイルへの参照を返します。これは、システムの一時ディレクトリパスに作成される新しいファイルです。
このメソッドを使用すると、新しい一意のファイルを指定できます。システムに照会してファイルが新規かつ一意であることを確認する必要はありません。
一時ファイルは自動では削除されないため、アプリケーションを閉じる前に削除することを検討してください。
戻り値File — 新しい一時ファイルを参照している File オブジェクト。
|
関連項目
createTempFile() メソッドを使用して新しい一時ファイルへの参照を取得します。import flash.File; var temp:File = File.createTempFile(); trace(temp.nativePath);
| () | メソッド |
public function deleteDirectory(deleteDirectoryContents:Boolean = false):void| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
ディレクトリを削除します。このファイルが実際にディレクトリに対するシンボリックリンクの場合は、ディレクトリではなくこのリンクが削除されます。
パラメータ
deleteDirectoryContents:Boolean (default = false) — ファイルまたはサブディレクトリが格納されているディレクトリを削除するかどうかを指定します。false の場合、ディレクトリにファイルまたはサブディレクトリが格納されていると、このメソッドの呼び出しで例外がスローされます。
|
IOError — ディレクトリが存在しないか、削除できませんでした。Windows では、開いているファイルのあるディレクトリを削除することはできません。
|
関連項目
deleteDirectory() メソッドを使用してこのディレクトリを削除します。
import flash.filesystem.File;
var directory:File = File.documentsDirectory.resolvePath("Empty Junk Directory/");
File.createDirectory(directory);
trace(directory.exists); // true
directory.deleteDirectory();
trace(directory.exists); // false| () | メソッド |
public function deleteDirectoryAsync(deleteDirectoryContents:Boolean = false):void| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
ディレクトリを非同期で削除します。このファイルが実際にディレクトリに対するシンボリックリンクの場合は、ディレクトリではなくこのリンクが削除されます。
パラメータ
deleteDirectoryContents:Boolean (default = false) — ファイルまたはサブディレクトリが格納されているディレクトリを削除するかどうかを指定します。false の場合、ディレクトリにファイルまたはサブディレクトリが格納されていると、ioError イベントが送出されます。
|
complete: — ディレクトリが正常に削除されると送出されます。 | |
ioError: — ディレクトリが存在しないか、削除できませんでした。Windows では、開いているファイルのあるディレクトリを削除することはできません。 |
関連項目
| () | メソッド |
public function deleteFile():void| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
ファイルを削除します。このファイルが実際にシンボリックリンクの場合は、ターゲットファイルではなくこのリンクが削除されます。
IOError — ファイルが存在しないか、削除できませんでした。Windows では、現在開いているファイルを削除することはできません。
|
関連項目
deleteFile() メソッドを呼び出して一時ファイルを削除します。import flash.filesystem.*; var file:File = File.createTempFile(); trace(file.exists); // true file.deleteFile(); trace(file.exists); // false
| () | メソッド |
public function deleteFileAsync():void| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
ファイルを非同期で削除します。このファイルが実際にシンボリックリンクの場合は、ターゲットファイルではなくこのリンクが削除されます。
complete: — ファイルが正常に削除されると送出されます。 | |
ioError: — ファイルが存在しないか、削除できませんでした。Windows では、現在開いているファイルを削除することはできません。 |
関連項目
| () | メソッド |
public function getDirectoryListing():Array| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
この File オブジェクトによって表されるディレクトリ内のファイルおよびディレクトリに対応する File オブジェクトの配列を返します。このメソッドは、サブディレクトリの内容は調べません。
戻り値Array — File オブジェクトの配列です。
|
関連項目
getDirectoryListing() メソッドを使用してユーザーディレクトリの内容を列挙する方法を示しています。
import flash.filesystem.File;
var directory:File = File.userDirectory;
var list:Array = directory.getDirectoryListing();
for (var i:uint = 0; i < list.length; i++) {
trace(list[i].nativePath);
}| () | メソッド |
public function getDirectoryListingAsync():void| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
この File オブジェクトによって表されるディレクトリの内容に対応する File オブジェクトの配列を非同期で取得します。
ioError: — このディレクトリを読み取るために必要なアクセス権がないか、ディレクトリが存在しません。 | |
directoryListing: — ディレクトリの内容が正常に列挙されました。contents イベントには、結果として得られる File オブジェクトの配列である files プロパティが含まれています。 |
関連項目
getDirectoryListingAsync() メソッドを使用してユーザーディレクトリの内容を列挙する方法を示しています。
import flash.filesystem.File;
import flash.events.FileListEvent;
var directory:File = File.userDirectory;
directory.getDirectoryListingAsync();
directory.addEventListener(FileListEvent.DIRECTORY_LISTING, directoryListingHandler);
function directoryListingHandler(event:FileListEvent):void {
var list:Array = event.files;
for (var i:uint = 0; i < list.length; i++) {
trace(list[i].nativePath);
}
}| () | メソッド |
public function getRelativePath(ref:FileReference, useDotDot:Boolean = false):String| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
2 つの File パス間の相対パスを探します。
相対パスは、2 つ目の (パラメータ) 参照を見つけるためにこの参照に追加 (解決) されるコンポーネントのリストです。相対パスは、区切り文字 "/" を使用して返されます。
必要に応じて、相対パスに ".." 参照を含めることができますが、そのようなパスが明確なボリューム境界を越えることはありません。
パラメータ
ref:FileReference — パスを指定する File オブジェクトです。
| |
useDotDot:Boolean (default = false) — 結果として得られる相対パスで ".." コンポーネントを使用できるかどうかを指定します。
|
String — このファイル(またはディレクトリ)と ref ファイル(またはディレクトリ)との間の相対パス(可能な場合)、または null です。
|
ArgumentError — 参照が null です。
| |
SecurityError — 呼び出し元がアプリケーションのセキュリティサンドボックス内ではありません。
|
| () | メソッド |
public static function getRootDirectories():Array| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
ファイルシステムのルートディレクトリを列挙している File オブジェクトの配列を返します。
例えば、Windows ではこれは C: ドライブや D: ドライブなどのボリュームのリストです。ディスクが挿入されていない CD または DVD ドライブなどの空のドライブは、この配列に含まれません。 Mac OS および Linux では、このメソッドは常にマシンに固有のルートディレクトリ(/ ディレクトリ)を返します。
戻り値Array — ルートディレクトリを列挙している File オブジェクトの配列。
|
import flash.filesystem.File;
var rootDirs:Array = File.getRootDirectories();
for (var i:uint = 0; i < rootDirs.length; i++) {
trace(rootDirs[i].nativePath);
}| () | メソッド |
public function moveTo(newLocation:FileReference, overwrite:Boolean = false):void| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
この File オブジェクトで指定された場所にあるファイルまたはディレクトリを、destination パラメータで指定された場所に移動します。
ファイルの名前を変更するには、そのファイルのディレクトリにある別の名前のファイルへのパスを指すように destination パラメータを設定します。
移動処理によって、可能な場合には必要な親ディレクトリが作成されます。
パラメータ
newLocation:FileReference — 移動先の場所です。このオブジェクトは、結果として得られる(移動される)ファイルまたはディレクトリを表すものであり、それを格納しているディレクトリへのパスを表すものではありません。
| |
overwrite:Boolean (default = false) — false の場合、target ファイルが既に存在すると移動が失敗します。true の場合は、同じ名前のファイルまたはディレクトリが存在すると、このファイルまたはディレクトリが上書きされます。
|
IOError — ソースが存在しないか、宛先が存在し、かつ overwrite が false に設定されているか、ソースファイルまたはディレクトリをターゲットの場所に移動できなかったか、またはソースおよび宛先が同じファイルまたはフォルダを参照し、かつ overwrite が true に設定されています。Windows では、開いているファイルや、開いているファイルが格納されているディレクトリを移動することはできません。
|
関連項目
moveTo() メソッドを使用してファイルの名前を変更する方法を示しています。元のファイル名は test1.txt で、変更後のファイル名は test2.txt です。ソースと宛先の File オブジェクトはどちらも同じディレクトリ(ユーザーのドキュメントディレクトリ内の Apollo Test サブディレクトリ)を指しているため、この moveTo() メソッドでは、ファイルが新しいディレクトリに移動されのではなく、ファイルの名前が変更されます。このコードを実行する前に、ローカルコンピュータのドキュメントディレクトリ内の AIR Test サブディレクトリに test1.txt というファイルを作成しておく必要があります。clobber パラメータを true に設定すると、test2.txt という名前の既存のファイルがあった場合はこのファイルが上書きされます。
import flash.filesystem.File;
import flash.events.Event;
var sourceFile:File = File.documentsDirectory;
sourceFile = sourceFile.resolvePath("AIR Test/test1.txt");
var destination:File = File.documentsDirectory;
destination = destination.resolvePath("Apollo Test/test2.txt");
try
{
sourceFile.moveTo(destination, true);
}
catch (error:Error)
{
trace("Error:" error.message);
}moveTo() メソッドを使用してファイルを移動する方法を示しています。元のファイルはユーザーのドキュメントディレクトリ内の Apollo Test サブディレクトリに格納されている test1.txt ファイルであり、このファイルが Results サブディレクトリに移動されます。このコードを実行する前に、ローカルコンピュータのホームディレクトリ内の AIR Test サブディレクトリに test1.txt というファイルを作成しておく必要があります。try ステートメントと catch ステートメントは、エラーへの対処方法を示しています。
import flash.filesystem.File;
var sourceFile:File = File.documentsDirectory;
sourceFile = sourceFile.resolvePath("AIR Test/test1.txt");
var destination:File = File.documentsDirectory;
destination = destination.resolvePath("AIR Test/Results/test1.txt");
try
{
sourceFile.moveTo(destination, true);
}
catch (error:Error)
{
trace("Error:" error.message);
}| () | メソッド |
public function moveToAsync(newLocation:FileReference, overwrite:Boolean = false):void| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
この File オブジェクトで指定された場所にあるファイルまたはディレクトリを、newLocation パラメータで指定された場所に移動する処理を開始します。
ファイルの名前を変更するには、そのファイルのディレクトリにある別の名前のファイルへのパスを指すように destination パラメータを設定します。
移動処理によって、可能な場合には必要な親ディレクトリが作成されます。
パラメータ
newLocation:FileReference — 移動先の場所です。このオブジェクトは、結果として得られる(移動される)ファイルまたはディレクトリを表すものであり、それを格納しているディレクトリへのパスを表すものではありません。
| |
overwrite:Boolean (default = false) — false の場合、target ファイルが既に存在すると移動が失敗します。true の場合は、同じ名前のファイルまたはディレクトリが存在すると、このファイルまたはディレクトリが上書きされます。
|
complete: — ファイルまたはディレクトリが正常に移動されると送出されます。 | |
ioError: — ソースが存在しないか、またはターゲットが存在し overwrite が false であるか、またはソースをターゲットに移動できないか、またはソースとターゲットが同じファイルまたはフォルダを参照し overwrite が true に設定されています。Windows では、開いているファイルや、開いているファイルが格納されているディレクトリを移動することはできません。 |
関連項目
moveToAsync() メソッドを使用してファイルの名前を変更する方法を示しています。元のファイル名は test1.txt で、変更後の名前は test2.txt です。ソースと宛先の File オブジェクトはどちらも同じディレクトリ(ユーザーのドキュメントディレクトリ内の Apollo Test サブディレクトリ)を指しているため、この moveToAsync() メソッドでは、ファイルが新しいディレクトリに移動されのではなく、ファイルの名前が変更されます。このコードを実行する前に、ローカルコンピュータのドキュメントディレクトリ内の Apollo Test サブディレクトリに test1.txt というファイルを作成しておく必要があります。clobber パラメータを true に設定すると、test2.txt という名前の既存のファイルがあった場合はこのファイルが上書きされます。
import flash.filesystem.File;
import flash.events.Event;
var sourceFile:File = File.documentsDirectory;
sourceFile = sourceFile.resolvePath("Apollo Test/test1.txt");
var destination:File = File.documentsDirectory;
destination = destination.resolvePath("Apollo Test/test2.txt");
var sourceFile.moveToAsync(destination, true);
sourceFile.addEventListener(Event.COMPLETE, fileMoveCompleteHandler);
function fileMoveCompleteHandler(event:Event):void
{
trace("Done.")
}| () | メソッド |
public function moveToTrash():void| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
ファイルまたはディレクトリをごみ箱に移動します。
IOError — 操作がオペレーティングシステムによって許可されなかったか、ファイルまたはディレクトリが存在しません。Windows では、開いているファイルや、現在開いているファイルが格納されているディレクトリを移動することはできません。
|
関連項目
| () | メソッド |
public function moveToTrashAsync():void| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
ファイルまたはディレクトリを非同期でごみ箱に移動します。
ioError: — 操作がオペレーティングシステムによって許可されなかったか、ファイルまたはディレクトリが存在しません。Windows では、開いているファイルや、現在開いているファイルが格納されているディレクトリを移動することはできません。 | |
complete: — ファイルまたはディレクトリが正常にゴミ箱に移動されると送出されます。 |
関連項目
| () | メソッド |
public function resolvePath(path:String):File| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
path パラメータ (ストリング) に基づいて、この File オブジェクトのパスを基準とした相対的なパスを持つ新しい File オブジェクトを作成します。
path パラメータとして相対パスまたは絶対パスを使用できます。
相対パスを指定した場合、指定した path は File オブジェクトのパスの末尾に「追加」されます。ただし ".." をpath で使用すると、File オブジェクトの子ではないパスが結果として返されることがあります。結果として得られる参照は、実際のファイルシステムの場所を参照していなくても構いません。
絶対ファイル参照を指定した場合、メソッドはそのパスを示す File オブジェクトを返します。絶対ファイル参照では、ユーザーのオペレーティングシステムの有効なネイティブパス構文(Windows の "C:\\test" など)を使用する必要があります。URL("file:///c:/test" など)を path パラメータとして使用しないでください。
結果として得られたパスは、すべて次のように正規化されます。
パス区切り文字には常にスラッシュ(/)を使用してください。Windows では円記号(\)も使用できますが、これを使用すると、アプリケーションが他のプラットフォームで動作しなくなる可能性があります。
Linux では、ファイル名およびディレクトリ名の大文字と小文字は区別されます。
パラメータ
path:String — この File オブジェクトのパスに追加するパス (path パラメータが相対パスである場合)、または返すパス (path パラメータが絶対パスである場合)。
|
File — 結果として得られたパスを示す新しい File オブジェクト。
|
| イベント |
flash.events.Eventflash.events.Event.CANCEL| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
保留中の非同期処理がキャンセルされると、送出されます。
Event.CANCEL 定数は、type プロパティ(cancel イベントオブジェクト)の値を定義します。
このイベントには、次のプロパティがあります。
| プロパティ | 値 |
|---|---|
bubbles | false |
cancelable | false は、キャンセルするデフォルトの動作がないことを示します。 |
currentTarget | イベントリスナーで Event オブジェクトをアクティブに処理しているオブジェクトです。 |
target | 操作をキャンセルするオブジェクトへの参照です。 |
| イベント |
flash.events.Eventflash.events.Event.COMPLETE| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
非同期処理が完了すると、送出されます。
Event.COMPLETE 定数は、type プロパティ(complete イベントオブジェクト)の値を定義します。
このイベントには、次のプロパティがあります。
| プロパティ | 値 |
|---|---|
bubbles | false |
cancelable | false は、キャンセルするデフォルトの動作がないことを示します。 |
currentTarget | イベントリスナーで Event オブジェクトをアクティブに処理しているオブジェクトです。 |
target | ロードが完了したネットワークオブジェクトです。 |
| イベント |
flash.events.FileListEventflash.events.FileListEvent.DIRECTORY_LISTING| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
getDirectoryListingAsync() メソッドを呼び出した結果、ディレクトリ一覧が得られると送出されます。
FileListEvent.DIRECTORY_LISTING 定数により、イベントオブジェクトの type プロパティ値が directoryListing イベント用に定義されます。
このイベントには、次のプロパティがあります。
| プロパティ | 値 |
|---|---|
bubbles | false |
cancelable | false は、キャンセルするデフォルトの動作がないことを示します。 |
files | ファイルまたはディレクトリを表す File オブジェクトの配列が見つかりました。 |
target | FileListEvent オブジェクトです。 |
関連項目
| イベント |
flash.events.IOErrorEventflash.events.IOErrorEvent.IO_ERROR| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
非同期ファイル処理中にエラーが発生すると、送出されます。
type プロパティ (ioError イベントオブジェクト) の値を定義します。
このイベントには、次のプロパティがあります。
| プロパティ | 値 |
|---|---|
bubbles | false |
cancelable | false は、キャンセルするデフォルトの動作がないことを示します。 |
currentTarget | イベントリスナーで Event オブジェクトをアクティブに処理しているオブジェクトです。 |
errorID | 特定のエラーに関連付けられた参照番号です(AIR のみ)。 |
target | 入出力エラーが発生したネットワークオブジェクトです。 |
text | エラーメッセージとして表示されるテキストです。 |
| イベント |
flash.events.SecurityErrorEventflash.events.SecurityErrorEvent.SECURITY_ERROR| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
操作がセキュリティ制約に違反していると、送出されます。
SecurityErrorEvent.SECURITY_ERROR 定数は、type プロパティ(securityError イベントオブジェクト)の値を定義します。
このイベントには、次のプロパティがあります。
| プロパティ | 値 |
|---|---|
bubbles | false |
cancelable | false は、キャンセルするデフォルトの動作がないことを示します。 |
currentTarget | イベントリスナーで Event オブジェクトをアクティブに処理しているオブジェクトです。 |
target | セキュリティエラーを報告するネットワークオブジェクトです。 |
text | エラーメッセージとして表示されるテキストです。 |
| イベント |
flash.events.Eventflash.events.Event.SELECT| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
ユーザーがファイルまたはディレクトリ参照ダイアログボックスからファイルまたはディレクトリを選択すると、送出されます。
Event.SELECT 定数は、type プロパティ(select イベントオブジェクト)の値を定義します。
このイベントには、次のプロパティがあります。
| プロパティ | 値 |
|---|---|
bubbles | false |
cancelable | false は、キャンセルするデフォルトの動作がないことを示します。 |
currentTarget | イベントリスナーで Event オブジェクトをアクティブに処理しているオブジェクトです。 |
target | アイテムが選択されたオブジェクトです。 |
| イベント |
flash.events.FileListEventflash.events.FileListEvent.SELECT_MULTIPLE| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 |
ユーザーが browseForOpenMultiple() メソッドの呼び出しによって開かれたダイアログボックスからファイルを選択すると、送出されます。
FileListEvent.SELECT_MULTIPLE 定数により、イベントオブジェクトの type プロパティ値が selectMultiple イベント用に定義されます。
| プロパティ | 値 |
|---|---|
bubbles | false |
cancelable | false は、キャンセルするデフォルトの動作がないことを示します。 |
files | ファイルを表す File オブジェクトの配列が選択されました。 |
target | FileListEvent オブジェクトです。 |
関連項目
このページに新しいコメントが追加された場合に、電子メールでの通知を希望する。 | コメントレポート
現在のページ: http://livedocs.adobe.com/flex/3_jp/langref/flash/filesystem/File.html