FileReference (flash.net.FileReference)


Object
    |
    +-flash.net.FileReference

public class FileReference
extends Object

FileReference クラスには、ユーザーのコンピュータとサーバーとの間でファイルをアップロードおよびダウンロードするための手段があります。オペレーティングシステムのダイアログボックスを使用して、アップロードするファイルや、ダウンロード先の場所をユーザーが選択できるようにします。各 FileReference オブジェクトはユーザーのハードディスク上にある 1 つのファイルを参照し、ファイルのサイズ、タイプ、名前、作成日、変更日、クリエータタイプ (Macintosh のみ) に関する情報を保持するプロパティを備えています。

FileReference インスタンスは、次の 2 とおりの方法で作成できます。

アップロード処理の実行中、FileReference オブジェクトのすべてのプロパティの値が、FileReference.browse() または FileReferenceList.browse() への呼び出しによって設定されます。ダウンロード処理の実行中、name プロパティの値は onSelect が呼び出されたときに設定されます。これ以外のすべてのプロパティの値は、onComplete が呼び出されたときに設定されます。

browse() メソッドはオペレーティングシステムのダイアログボックスを開いて、ユーザーがアップロード対象のローカルファイルを選択できるようにします。FileReference.browse() メソッドを使用すると、ユーザーは単一のファイルを選択できます。FileReferenceList.browse() メソッドを使用すると、複数のファイルを選択できます。browse() メソッドの呼び出しが正常に終了したら、FileReference.upload() メソッドを呼び出して一度に 1 つのファイルをアップロードします。FileReference.download() メソッドは、ファイルの保存先をユーザーに指定させ、リモート URL からのダウンロードを開始します。

browse() および download() 呼び出しによって生成されるダイアログボックスのデフォルトのファイルの場所を、FileReference クラスおよび FileReferenceList クラスを使って設定することはできません。ダイアログボックスに表示されるデフォルトの場所は、最後に参照されたフォルダ (その場所を決定できる場合) またはデスクトップです。これらのクラスを使って、転送ファイルを読み込んだり、転送ファイルに書き込んだりすることはできません。これらのクラスを使用しても、アップロードまたはダウンロードを開始した SWF ファイルが、アップロードファイルやダウンロードファイル、またはユーザーのディスクのファイルの場所にアクセスすることはできません。

また FileReference と FileReferenceList クラスは認証方法も提供しません。認証が必要なサーバーでは、Flash Player ブラウザプラグインを使ってファイルをダウンロードできますが、すべての Player でのアップロード、およびスタンドアローンまたは外部 Player でのダウンロードは失敗します。処理が正常に終了したかどうかを確認して、エラー処理を行う場合は、FileReference のイベントリスナーを使用します。

アップロード処理およびダウンロード処理の場合、SWF ファイルは、それ自体のドメイン内に含まれるファイルだけにアクセスできます。こうしたドメインには、クロスドメインポリシーファイルで指定されたドメインが含まれます。アップロードまたはダウンロードを開始している SWF が、ファイルサーバーと同じドメインに属していない場合、ファイルサーバーにポリシーファイルを配置する必要があります。

FileReference.browse()FileReferenceList.browse()、または FileReference.download() メソッドの呼び出し中、SWF ファイルの再生が一時停止する場合があります。一時停止が発生するプラットフォームは、Linux 対応 Flash Player、Mac OS X の Flash Player プラグイン、Macintosh の外部 Flash Player、および Mac OS X 10.1 以前のスタンドアローン Flash Player です。すべての Windows 用 Flash Palyerと Mac OS X 10.2 以降で実行される Macintosh 用スタンドアローン Flash Player で実行する場合、SWF ファイルの再生は続行します。

対応バージョン : ActionScript 1.0、Flash Player 8

次の例では、ユーザーがアップロード対象のイメージまたはテキストファイルを選択できるようにする FileReference オブジェクトを作成します。また、使用可能なイベントの待機も実行します。

import flash.net.FileReference;

var allTypes:Array = new Array();
var imageTypes:Object = new Object();
imageTypes.description = "Images (*.jpg, *.jpeg, *.gif, *.png)";
imageTypes.extension = "*.jpg; *.jpeg; *.gif; *.png";
allTypes.push(imageTypes);

var textTypes:Object = new Object();
textTypes.description = "Text Files (*.txt, *.rtf)";
textTypes.extension = "*.txt;*.rtf";
allTypes.push(textTypes);

var listener:Object = new Object(); 

listener.onSelect = function(file:FileReference):Void {
    trace("onSelect: " + file.name);
    if(!file.upload("http://www.yourdomain.com/yourUploadHandlerScript.cfm")) {
        trace("Upload dialog failed to open.");
    }
}

listener.onCancel = function(file:FileReference):Void {
    trace("onCancel");
}

listener.onOpen = function(file:FileReference):Void {
    trace("onOpen: " + file.name);
}

listener.onProgress = function(file:FileReference, bytesLoaded:Number, bytesTotal:Number):Void {
    trace("onProgress with bytesLoaded: " + bytesLoaded + " bytesTotal: " + bytesTotal);
}

listener.onComplete = function(file:FileReference):Void {
    trace("onComplete: " + file.name);
}

listener.onHTTPError = function(file:FileReference):Void {
    trace("onHTTPError: " + file.name);
}

listener.onIOError = function(file:FileReference):Void {
    trace("onIOError: " + file.name);
}

listener.onSecurityError = function(file:FileReference, errorString:String):Void {
    trace("onSecurityError: " + file.name + " errorString: " + errorString);
}

var fileRef:FileReference = new FileReference();
fileRef.addListener(listener);
fileRef.browse(allTypes);

関連項目

FileReferenceList (flash.net.FileReferenceList)

プロパティ一覧

オプション

プロパティ

説明

 

creationDate:Date (読み取り専用)

ローカルディスク上に存在するファイルの作成日です。

 

creator:String (読み取り専用)

ファイルの Macintosh クリエータタイプです。

 

modificationDate:Date (読み取り専用)

ローカルディスク上に存在するファイルの最終変更日です。

 

name:String (読み取り専用)

ローカルディスク上に存在するファイルの名前です。

 

postData:String

アップロードまたはダウンロード時に送信する POST パラメータ

 

size:Number (読み取り専用)

ローカルディスク上に存在するファイルのサイズ (バイト単位) です。

 

type:String (読み取り専用)

ファイル形式です。

Object クラスから継承されるプロパティ

constructor (Object.constructor プロパティ), __proto__ (Object.__proto__ プロパティ), prototype (Object.prototype プロパティ), __resolve (Object.__resolve プロパティ)


イベントの一覧

イベント

説明

onCancel = function(fileRef:FileReference) {}

ユーザーがファイル参照ダイアログボックスを閉じると、呼び出されます。

onComplete = function(fileRef:FileReference) {}

アップロード処理またはダウンロード処理が正常に完了したときに呼び出されます。

onHTTPError = function(fileRef:FileReference, httpError:Number) {}

HTTP エラーのためにアップロードが失敗したときに呼び出されます。

onIOError = function(fileRef:FileReference) {}

入出力エラーが発生したときに呼び出されます。

onOpen = function(fileRef:FileReference) {}

アップロード処理またはダウンロード処理が開始するときに呼び出されます。

onProgress = function(fileRef:FileReference, bytesLoaded:Number, bytesTotal:Number) {}

ファイルのアップロード処理中またはダウンロード処理中に定期的に呼び出されます。

onSecurityError = function(fileRef:FileReference, errorString:String) {}

セキュリティエラーのためにアップロードまたはダウンロードが失敗したときに呼び出されます。

onSelect = function(fileRef:FileReference) {}

ユーザーがアップロードするファイルまたはダウンロードするファイルをファイル参照ダイアログボックスから選択したときに、呼び出されます。

onUploadCompleteData = function(fileRef:FileReference, data:String) {}

アップロードが正常に終了した後にサーバーからデータを受信すると呼び出されます。

コンストラクタ一覧

署名

説明

FileReference()

新しい FileReference オブジェクトを作成します。

メソッド一覧

オプション

署名

説明

 

addListener(listener:Object) : Void

FileReference イベントリスナーが呼び出されたときに通知を受けるオブジェクトを登録します。

 

browse([typelist:Array]) : Boolean

アップロードするローカルファイルを選択するためのファイル参照ダイアログボックスを表示します。

 

cancel() : Void

この FileReference オブジェクトで進行中のアップロード処理またはダウンロード処理を取り消します。

 

download(url:String, [defaultFileName:String]) : Boolean

リモートサーバーからファイルをダウンロードするためのダイアログボックスを表示します。

 

removeListener(listener:Object) : Boolean

イベント通知メッセージを受信するオブジェクトのリストからオブジェクトを削除します。

 

upload(url:String, uploadDataFieldName:String, testUpload:Boolean) : Boolean

ユーザーが選択したファイルをリモートサーバーにアップロードする処理を開始します。

Object クラスから継承されるメソッド

addProperty (Object.addProperty メソッド), hasOwnProperty (Object.hasOwnProperty メソッド), isPropertyEnumerable (Object.isPropertyEnumerable メソッド), isPrototypeOf (Object.isPrototypeOf メソッド), registerClass (Object.registerClass メソッド), toString (Object.toString メソッド), unwatch (Object.unwatch メソッド), valueOf (Object.valueOf メソッド), watch (Object.watch メソッド)



 

このページに新しいコメントが追加された場合に、電子メールでの通知を希望する。 | コメントレポート

現在のページ: http://livedocs.adobe.com/flash/9.0_jp/main/00001656.html