Adobe® Flash® Platform 用 ActionScript® 3.0 リファレンスガイド
ホーム  |  パッケージおよびクラスリストの非表示 |  パッケージ  |  クラス  |  新機能  |  索引  |  付録  |  英語で表示される理由
フィルター: AIR 30.0 以前, Flash Player 30.0 以前, Flash Lite 4
Flex 4.6 以前, Flash Pro CS6 以前
フィルターを非表示
flash.net 

FileReference  - AS3

パッケージx

トップレベル
adobe.utils
air.desktop
air.net
air.update
air.update.events
coldfusion.air
coldfusion.air.errors
coldfusion.air.events
coldfusion.service
coldfusion.service.events
coldfusion.service.mxml
com.adobe.acm.solutions.authoring.domain.extensions
com.adobe.acm.solutions.ccr.domain.extensions
com.adobe.consulting.pst.vo
com.adobe.dct.component
com.adobe.dct.component.datadictionary
com.adobe.dct.component.datadictionaryElement
com.adobe.dct.component.dataElementsPanel
com.adobe.dct.component.toolbars
com.adobe.dct.event
com.adobe.dct.exp
com.adobe.dct.model
com.adobe.dct.service
com.adobe.dct.service.provider
com.adobe.dct.transfer
com.adobe.dct.util
com.adobe.dct.view
com.adobe.ep.taskmanagement.domain
com.adobe.ep.taskmanagement.event
com.adobe.ep.taskmanagement.filter
com.adobe.ep.taskmanagement.services
com.adobe.ep.taskmanagement.util
com.adobe.ep.ux.attachmentlist.component
com.adobe.ep.ux.attachmentlist.domain
com.adobe.ep.ux.attachmentlist.domain.events
com.adobe.ep.ux.attachmentlist.domain.renderers
com.adobe.ep.ux.attachmentlist.skin
com.adobe.ep.ux.attachmentlist.skin.renderers
com.adobe.ep.ux.content.event
com.adobe.ep.ux.content.factory
com.adobe.ep.ux.content.handlers
com.adobe.ep.ux.content.managers
com.adobe.ep.ux.content.model.asset
com.adobe.ep.ux.content.model.preview
com.adobe.ep.ux.content.model.relation
com.adobe.ep.ux.content.model.search
com.adobe.ep.ux.content.model.toolbar
com.adobe.ep.ux.content.search
com.adobe.ep.ux.content.services
com.adobe.ep.ux.content.services.load
com.adobe.ep.ux.content.services.permissions
com.adobe.ep.ux.content.services.preview
com.adobe.ep.ux.content.services.providers
com.adobe.ep.ux.content.services.query
com.adobe.ep.ux.content.services.relationships
com.adobe.ep.ux.content.services.search.lccontent
com.adobe.ep.ux.content.services.version
com.adobe.ep.ux.content.view
com.adobe.ep.ux.content.view.components.activate
com.adobe.ep.ux.content.view.components.grid
com.adobe.ep.ux.content.view.components.grid.hover
com.adobe.ep.ux.content.view.components.grid.hover.component
com.adobe.ep.ux.content.view.components.grid.renderers
com.adobe.ep.ux.content.view.components.relationships
com.adobe.ep.ux.content.view.components.review
com.adobe.ep.ux.content.view.components.search.renderers
com.adobe.ep.ux.content.view.components.searchpod
com.adobe.ep.ux.content.view.components.toolbar
com.adobe.ep.ux.content.view.components.toolbar.controlRenderers
com.adobe.ep.ux.content.view.components.version
com.adobe.ep.ux.documentsubmit.component
com.adobe.ep.ux.documentsubmit.domain
com.adobe.ep.ux.documentsubmit.skin
com.adobe.ep.ux.taskaction.component
com.adobe.ep.ux.taskaction.domain
com.adobe.ep.ux.taskaction.domain.events
com.adobe.ep.ux.taskaction.skin
com.adobe.ep.ux.taskdetails.component
com.adobe.ep.ux.taskdetails.domain
com.adobe.ep.ux.taskdetails.skin
com.adobe.ep.ux.tasklist.component
com.adobe.ep.ux.tasklist.domain
com.adobe.ep.ux.tasklist.skin
com.adobe.ep.ux.webdocumentviewer.domain
com.adobe.exm.expression
com.adobe.exm.expression.error
com.adobe.exm.expression.event
com.adobe.exm.expression.impl
com.adobe.fiber.runtime.lib
com.adobe.fiber.services
com.adobe.fiber.services.wrapper
com.adobe.fiber.styles
com.adobe.fiber.util
com.adobe.fiber.valueobjects
com.adobe.gravity.binding
com.adobe.gravity.context
com.adobe.gravity.flex.bundleloader
com.adobe.gravity.flex.progress
com.adobe.gravity.flex.serviceloader
com.adobe.gravity.framework
com.adobe.gravity.init
com.adobe.gravity.service.bundleloader
com.adobe.gravity.service.logging
com.adobe.gravity.service.manifest
com.adobe.gravity.service.progress
com.adobe.gravity.tracker
com.adobe.gravity.ui
com.adobe.gravity.utility
com.adobe.gravity.utility.async
com.adobe.gravity.utility.error
com.adobe.gravity.utility.events
com.adobe.gravity.utility.factory
com.adobe.gravity.utility.flex.async
com.adobe.gravity.utility.logging
com.adobe.gravity.utility.message
com.adobe.gravity.utility.sequence
com.adobe.gravity.utility.url
com.adobe.guides.control
com.adobe.guides.domain
com.adobe.guides.i18n
com.adobe.guides.spark.components.skins
com.adobe.guides.spark.components.skins.mx
com.adobe.guides.spark.headers.components
com.adobe.guides.spark.headers.skins
com.adobe.guides.spark.layouts.components
com.adobe.guides.spark.layouts.skins
com.adobe.guides.spark.navigators.components
com.adobe.guides.spark.navigators.renderers
com.adobe.guides.spark.navigators.skins
com.adobe.guides.spark.util
com.adobe.guides.spark.wrappers.components
com.adobe.guides.spark.wrappers.skins
com.adobe.guides.submit
com.adobe.icc.dc.domain
com.adobe.icc.dc.domain.factory
com.adobe.icc.editors.events
com.adobe.icc.editors.handlers
com.adobe.icc.editors.managers
com.adobe.icc.editors.model
com.adobe.icc.editors.model.config
com.adobe.icc.editors.model.el
com.adobe.icc.editors.model.el.operands
com.adobe.icc.editors.model.el.operators
com.adobe.icc.enum
com.adobe.icc.external.dc
com.adobe.icc.obj
com.adobe.icc.services
com.adobe.icc.services.category
com.adobe.icc.services.config
com.adobe.icc.services.download
com.adobe.icc.services.export
com.adobe.icc.services.external
com.adobe.icc.services.formbridge
com.adobe.icc.services.fragmentlayout
com.adobe.icc.services.layout
com.adobe.icc.services.letter
com.adobe.icc.services.locator
com.adobe.icc.services.module
com.adobe.icc.services.render
com.adobe.icc.services.submit
com.adobe.icc.services.user
com.adobe.icc.token
com.adobe.icc.vo
com.adobe.icc.vo.render
com.adobe.icomm.assetplacement.controller
com.adobe.icomm.assetplacement.controller.utils
com.adobe.icomm.assetplacement.data
com.adobe.icomm.assetplacement.model
com.adobe.livecycle.assetmanager.client
com.adobe.livecycle.assetmanager.client.event
com.adobe.livecycle.assetmanager.client.handler
com.adobe.livecycle.assetmanager.client.managers
com.adobe.livecycle.assetmanager.client.model
com.adobe.livecycle.assetmanager.client.model.cms
com.adobe.livecycle.assetmanager.client.service
com.adobe.livecycle.assetmanager.client.service.search
com.adobe.livecycle.assetmanager.client.service.search.cms
com.adobe.livecycle.assetmanager.client.utils
com.adobe.livecycle.content
com.adobe.livecycle.rca.model
com.adobe.livecycle.rca.model.constant
com.adobe.livecycle.rca.model.document
com.adobe.livecycle.rca.model.participant
com.adobe.livecycle.rca.model.reminder
com.adobe.livecycle.rca.model.stage
com.adobe.livecycle.rca.service
com.adobe.livecycle.rca.service.core
com.adobe.livecycle.rca.service.core.delegate
com.adobe.livecycle.rca.service.process
com.adobe.livecycle.rca.service.process.delegate
com.adobe.livecycle.rca.token
com.adobe.livecycle.ria.security.api
com.adobe.livecycle.ria.security.service
com.adobe.mosaic.layouts
com.adobe.mosaic.layouts.dragAndDrop
com.adobe.mosaic.layouts.interfaces
com.adobe.mosaic.mxml
com.adobe.mosaic.om.constants
com.adobe.mosaic.om.events
com.adobe.mosaic.om.impl
com.adobe.mosaic.om.interfaces
com.adobe.mosaic.skinning
com.adobe.mosaic.sparklib.editors
com.adobe.mosaic.sparklib.optionMenu
com.adobe.mosaic.sparklib.scrollableMenu
com.adobe.mosaic.sparklib.scrollableMenu.skins
com.adobe.mosaic.sparklib.tabLayout
com.adobe.mosaic.sparklib.tabLayout.events
com.adobe.mosaic.sparklib.tabLayout.layouts
com.adobe.mosaic.sparklib.tabLayout.skins
com.adobe.mosaic.sparklib.text
com.adobe.mosaic.sparklib.util
com.adobe.solutions.acm.authoring.presentation
com.adobe.solutions.acm.authoring.presentation.actionbar
com.adobe.solutions.acm.authoring.presentation.common
com.adobe.solutions.acm.authoring.presentation.events
com.adobe.solutions.acm.authoring.presentation.fragment
com.adobe.solutions.acm.authoring.presentation.letter
com.adobe.solutions.acm.authoring.presentation.letter.data
com.adobe.solutions.acm.authoring.presentation.preview
com.adobe.solutions.acm.authoring.presentation.rte
com.adobe.solutions.acm.ccr.presentation
com.adobe.solutions.acm.ccr.presentation.contentcapture
com.adobe.solutions.acm.ccr.presentation.contentcapture.events
com.adobe.solutions.acm.ccr.presentation.contentcapture.preview
com.adobe.solutions.acm.ccr.presentation.datacapture
com.adobe.solutions.acm.ccr.presentation.datacapture.renderers
com.adobe.solutions.acm.ccr.presentation.pdf
com.adobe.solutions.exm
com.adobe.solutions.exm.authoring
com.adobe.solutions.exm.authoring.components.controls
com.adobe.solutions.exm.authoring.components.toolbars
com.adobe.solutions.exm.authoring.domain
com.adobe.solutions.exm.authoring.domain.expression
com.adobe.solutions.exm.authoring.domain.impl
com.adobe.solutions.exm.authoring.domain.method
com.adobe.solutions.exm.authoring.domain.variable
com.adobe.solutions.exm.authoring.enum
com.adobe.solutions.exm.authoring.events
com.adobe.solutions.exm.authoring.model
com.adobe.solutions.exm.authoring.renderer
com.adobe.solutions.exm.authoring.view
com.adobe.solutions.exm.expression
com.adobe.solutions.exm.impl
com.adobe.solutions.exm.impl.method
com.adobe.solutions.exm.method
com.adobe.solutions.exm.mock
com.adobe.solutions.exm.mock.method
com.adobe.solutions.exm.runtime
com.adobe.solutions.exm.runtime.impl
com.adobe.solutions.exm.variable
com.adobe.solutions.prm.constant
com.adobe.solutions.prm.domain
com.adobe.solutions.prm.domain.factory
com.adobe.solutions.prm.domain.impl
com.adobe.solutions.prm.domain.manager
com.adobe.solutions.prm.presentation.asset
com.adobe.solutions.prm.presentation.constant
com.adobe.solutions.prm.presentation.document
com.adobe.solutions.prm.presentation.event
com.adobe.solutions.prm.presentation.file
com.adobe.solutions.prm.presentation.project
com.adobe.solutions.prm.presentation.team
com.adobe.solutions.prm.presentation.util
com.adobe.solutions.prm.service
com.adobe.solutions.prm.services.impl
com.adobe.solutions.prm.vo
com.adobe.solutions.rca.constant
com.adobe.solutions.rca.domain
com.adobe.solutions.rca.domain.common
com.adobe.solutions.rca.domain.factory
com.adobe.solutions.rca.domain.impl
com.adobe.solutions.rca.domain.impl.manager
com.adobe.solutions.rca.domain.manager
com.adobe.solutions.rca.presentation
com.adobe.solutions.rca.presentation.comment
com.adobe.solutions.rca.presentation.constant
com.adobe.solutions.rca.presentation.event
com.adobe.solutions.rca.presentation.gantt
com.adobe.solutions.rca.presentation.gantt.ruler
com.adobe.solutions.rca.presentation.template
com.adobe.solutions.rca.presentation.template.audit
com.adobe.solutions.rca.presentation.template.definition
com.adobe.solutions.rca.presentation.template.documents
com.adobe.solutions.rca.presentation.template.stages
com.adobe.solutions.rca.presentation.util
com.adobe.solutions.rca.service
com.adobe.solutions.rca.services.impl
com.adobe.solutions.rca.vo
com.adobe.solutions.rca.vo.um
com.adobe.viewsource
fl.accessibility
fl.containers
fl.controls
fl.controls.dataGridClasses
fl.controls.listClasses
fl.controls.progressBarClasses
fl.core
fl.data
fl.display
fl.events
fl.ik
fl.lang
fl.livepreview
fl.managers
fl.motion
fl.motion.easing
fl.rsl
fl.text
fl.transitions
fl.transitions.easing
fl.video
flash.accessibility
flash.concurrent
flash.crypto
flash.data
flash.desktop
flash.display
flash.display3D
flash.display3D.textures
flash.errors
flash.events
flash.external
flash.filesystem
flash.filters
flash.geom
flash.globalization
flash.html
flash.media
flash.net
flash.net.dns
flash.net.drm
flash.notifications
flash.permissions
flash.printing
flash.profiler
flash.sampler
flash.security
flash.sensors
flash.system
flash.text
flash.text.engine
flash.text.ime
flash.ui
flash.utils
flash.xml
flashx.textLayout
flashx.textLayout.compose
flashx.textLayout.container
flashx.textLayout.conversion
flashx.textLayout.edit
flashx.textLayout.elements
flashx.textLayout.events
flashx.textLayout.factory
flashx.textLayout.formats
flashx.textLayout.operations
flashx.textLayout.utils
flashx.undo
ga.controls
ga.layouts
ga.model
ga.uiComponents
ga.util
ga.views
ga.wrappers
lc.foundation
lc.foundation.domain
lc.foundation.events
lc.foundation.ui
lc.foundation.util
lc.preloader
lc.procmgmt
lc.procmgmt.commands
lc.procmgmt.domain
lc.procmgmt.events
lc.procmgmt.formbridge
lc.procmgmt.impl
lc.procmgmt.ui.attachments
lc.procmgmt.ui.controls
lc.procmgmt.ui.controls.card
lc.procmgmt.ui.controls.renderer
lc.procmgmt.ui.help
lc.procmgmt.ui.layout
lc.procmgmt.ui.presentationmodel
lc.procmgmt.ui.process
lc.procmgmt.ui.search
lc.procmgmt.ui.startpoint
lc.procmgmt.ui.task
lc.procmgmt.ui.task.form
lc.procmgmt.ui.task.form.commands
lc.procmgmt.ui.tracking
mx.accessibility
mx.automation
mx.automation.air
mx.automation.delegates
mx.automation.delegates.advancedDataGrid
mx.automation.delegates.charts
mx.automation.delegates.containers
mx.automation.delegates.controls
mx.automation.delegates.controls.dataGridClasses
mx.automation.delegates.controls.fileSystemClasses
mx.automation.delegates.core
mx.automation.delegates.flashflexkit
mx.automation.events
mx.binding
mx.binding.utils
mx.charts
mx.charts.chartClasses
mx.charts.effects
mx.charts.effects.effectClasses
mx.charts.events
mx.charts.renderers
mx.charts.series
mx.charts.series.items
mx.charts.series.renderData
mx.charts.styles
mx.collections
mx.collections.errors
mx.containers
mx.containers.accordionClasses
mx.containers.dividedBoxClasses
mx.containers.errors
mx.containers.utilityClasses
mx.controls
mx.controls.advancedDataGridClasses
mx.controls.dataGridClasses
mx.controls.listClasses
mx.controls.menuClasses
mx.controls.olapDataGridClasses
mx.controls.scrollClasses
mx.controls.sliderClasses
mx.controls.textClasses
mx.controls.treeClasses
mx.controls.videoClasses
mx.core
mx.core.windowClasses
mx.data
mx.data.crypto
mx.data.errors
mx.data.events
mx.data.messages
mx.data.mxml
mx.data.offline.errors
mx.data.utils
mx.effects
mx.effects.easing
mx.effects.effectClasses
mx.events
mx.filters
mx.flash
mx.formatters
mx.geom
mx.graphics
mx.graphics.codec
mx.graphics.shaderClasses
mx.logging
mx.logging.errors
mx.logging.targets
mx.managers
mx.messaging
mx.messaging.channels
mx.messaging.config
mx.messaging.errors
mx.messaging.events
mx.messaging.management
mx.messaging.messages
mx.modules
mx.netmon
mx.olap
mx.olap.aggregators
mx.preloaders
mx.printing
mx.resources
mx.rpc
mx.rpc.events
mx.rpc.http
mx.rpc.http.mxml
mx.rpc.livecycle
mx.rpc.mxml
mx.rpc.remoting
mx.rpc.remoting.mxml
mx.rpc.soap
mx.rpc.soap.mxml
mx.rpc.wsdl
mx.rpc.xml
mx.skins
mx.skins.halo
mx.skins.spark
mx.skins.wireframe
mx.skins.wireframe.windowChrome
mx.states
mx.styles
mx.utils
mx.validators
org.osmf.containers
org.osmf.display
org.osmf.elements
org.osmf.events
org.osmf.layout
org.osmf.logging
org.osmf.media
org.osmf.metadata
org.osmf.net
org.osmf.net.dvr
org.osmf.net.httpstreaming
org.osmf.net.metrics
org.osmf.net.qos
org.osmf.net.rtmpstreaming
org.osmf.net.rules
org.osmf.traits
org.osmf.utils
spark.accessibility
spark.automation.delegates
spark.automation.delegates.components
spark.automation.delegates.components.gridClasses
spark.automation.delegates.components.mediaClasses
spark.automation.delegates.components.supportClasses
spark.automation.delegates.skins.spark
spark.automation.events
spark.collections
spark.components
spark.components.calendarClasses
spark.components.gridClasses
spark.components.mediaClasses
spark.components.supportClasses
spark.components.windowClasses
spark.core
spark.effects
spark.effects.animation
spark.effects.easing
spark.effects.interpolation
spark.effects.supportClasses
spark.events
spark.filters
spark.formatters
spark.formatters.supportClasses
spark.globalization
spark.globalization.supportClasses
spark.layouts
spark.layouts.supportClasses
spark.managers
spark.modules
spark.preloaders
spark.primitives
spark.primitives.supportClasses
spark.skins
spark.skins.mobile
spark.skins.mobile.supportClasses
spark.skins.spark
spark.skins.spark.mediaClasses.fullScreen
spark.skins.spark.mediaClasses.normal
spark.skins.spark.windowChrome
spark.skins.wireframe
spark.skins.wireframe.mediaClasses
spark.skins.wireframe.mediaClasses.fullScreen
spark.transitions
spark.utils
spark.validators
spark.validators.supportClasses
xd.core.axm.enterprise.view.components
xd.core.axm.enterprise.view.skins
xd.core.axm.view.components
xd.core.axm.view.components.support

言語エレメント

グローバル定数
グローバル関数
演算子
ステートメント、キーワード、ディレクティブ
特殊な型

付録

新機能
コンパイルエラー
コンパイラー警告
ランタイムエラー
ActionScript 3 への移行
サポートされている文字セット
MXML のみのタグ
モーション XML エレメント
Timed Text タグ
使用されなくなったエレメントのリスト
Accessibility Implementation 定数
ActionScript の例の使用方法
法律上の注意
パッケージflash.net
クラスpublic class FileReference
継承FileReference Inheritance EventDispatcher Inheritance Object
サブクラス File

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0, Flash Player 9

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

注意: Adobe AIR では、FileReference クラスを拡張する File クラスはより多くの機能を提供し、FileReference クラスよりもセキュリティの制限が小さくなっています。

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

  • FileReference コンストラクターで new 演算子を使用する方法:var myFileReference = new FileReference();
  • FileReferenceList.browse() メソッドを呼び出す方法です。これによって FileReference オブジェクトの配列が作成されます。

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

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

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

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

Flash Player で実行されるコンテンツの場合、またはアプリケーションセキュリティサンドボックス外の、Adobe AIR で実行されるコンテンツの場合、アップロード操作およびダウンロード操作では、それ自身のドメイン内および URL ポリシーファイルが指定するドメイン内のファイルにのみアクセスできます。アップロードまたはダウンロードを開始しているコンテンツが、ファイルサーバーと同じドメインに属していない場合、ファイルサーバーにポリシーファイルを配置します。

Flash Player に追加された新しい機能により、Flash Player 10 にパブリッシュする場合は、FileReference.browse()FileReference.upload()FileReference.download()FileReference.load() および FileReference.save() の中で、同時に実行できる操作は 1 つのみです。複数の操作を実行すると、Flash Player でランタイムエラー(コード 2174)が発生します。進行中の操作を停止するには、FileReference.cancel() を使用します。この制限は Flash Player 10 にのみ適用されます。以前のバージョンの Flash Player については、同時に複数の操作を実行しても、この制限には影響されません。

FileReference.browse()FileReferenceList.browse()、または FileReference.download() メソッド呼び出しの実行中、Linux および Mac OS X 10.1 以前でのスタンドアローンと外部バージョンの Flash Player および AIR では、SWF ファイルの再生が一時停止します。

パラメーターが指定されていない場合は、次のサンプルの HTTP POST 要求が Flash Player からサーバーサイドスクリプトに送信されます。

  POST /handler.cfm HTTP/1.1 
  Accept: text/*
  Content-Type: multipart/form-data; 
  boundary=----------Ij5ae0ae0KM7GI3KM7 
  User-Agent: Shockwave Flash 
  Host: www.example.com 
  Content-Length: 421 
  Connection: Keep-Alive 
  Cache-Control: no-cache
  
  ------------Ij5GI3GI3ei4GI3ei4KM7GI3KM7KM7
  Content-Disposition: form-data; name="Filename"
  
  MyFile.jpg
  ------------Ij5GI3GI3ei4GI3ei4KM7GI3KM7KM7
  Content-Disposition: form-data; name="Filedata"; filename="MyFile.jpg"
  Content-Type: application/octet-stream
  
  FileDataHere
  ------------Ij5GI3GI3ei4GI3ei4KM7GI3KM7KM7
  Content-Disposition: form-data; name="Upload"
  
  Submit Query
  ------------Ij5GI3GI3ei4GI3ei4KM7GI3KM7KM7--
  

Flash Player が次の HTTP POST 要求を送信するのは、ユーザーが "api_sig""api_key"、および "auth_token" パラメーターを指定した場合です。

  POST /handler.cfm HTTP/1.1 
  Accept: text/*
  Content-Type: multipart/form-data; 
  boundary=----------Ij5ae0ae0KM7GI3KM7 
  User-Agent: Shockwave Flash 
  Host: www.example.com 
  Content-Length: 421 
  Connection: Keep-Alive 
  Cache-Control: no-cache
  
  ------------Ij5GI3GI3ei4GI3ei4KM7GI3KM7KM7
  Content-Disposition: form-data; name="Filename"
  
  MyFile.jpg
  ------------Ij5GI3GI3ei4GI3ei4KM7GI3KM7KM7
  Content-Disposition: form-data; name="api_sig"
  
  XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
  ------------Ij5GI3GI3ei4GI3ei4KM7GI3KM7KM7
  Content-Disposition: form-data; name="api_key"
  
  XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
  ------------Ij5GI3GI3ei4GI3ei4KM7GI3KM7KM7
  Content-Disposition: form-data; name="auth_token"
  
  XXXXXXXXXXXXXXXXXXXXXX
  ------------Ij5GI3GI3ei4GI3ei4KM7GI3KM7KM7
  Content-Disposition: form-data; name="Filedata"; filename="MyFile.jpg"
  Content-Type: application/octet-stream
  
  FileDataHere
  ------------Ij5GI3GI3ei4GI3ei4KM7GI3KM7KM7
  Content-Disposition: form-data; name="Upload"
  
  Submit Query
  ------------Ij5GI3GI3ei4GI3ei4KM7GI3KM7KM7--
  

例を表示

関連する API エレメント



パブリックプロパティ
 プロパティ定義元
 Inheritedconstructor : Object
指定されたオブジェクトインスタンスのクラスオブジェクトまたはコンストラクター関数への参照です。
Object
  creationDate : Date
[読み取り専用] ローカルディスク上に存在するファイルの作成日です。
FileReference
  creator : String
[読み取り専用] Macintosh クリエータータイプのファイルです。このファイルは、Mac OS X より前のバージョンの Mac OS でのみ使用されます。
FileReference
  data : ByteArray
[読み取り専用] load() メソッドの呼び出しが成功した後に読み込まれるファイルからのデータを表す ByteArray オブジェクト。
FileReference
      extension : String
[読み取り専用] ファイル名拡張子です。
FileReference
  modificationDate : Date
[読み取り専用] ローカルディスク上に存在するファイルの最終変更日です。
FileReference
  name : String
[読み取り専用] ローカルディスク上に存在するファイルの名前です。
FileReference
      permissionStatus : String
[静的] [読み取り専用] ファイルシステムにアクセスする権限をアプリケーションが付与されたかどうかを判定します。
FileReference
  size : Number
[読み取り専用] ローカルディスク上に存在するファイルのサイズ(バイト単位)です。
FileReference
  type : String
[読み取り専用] ファイル形式です。
FileReference
パブリックメソッド
 メソッド定義元
  
新しい FileReference オブジェクトを作成します。
FileReference
 Inherited
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
イベントリスナーオブジェクトを EventDispatcher オブジェクトに登録し、リスナーがイベントの通知を受け取るようにします。
EventDispatcher
  
browse(typeFilter:Array = null):Boolean
アップロードするファイルを選択できるファイル参照ダイアログボックスを表示します。
FileReference
  
この FileReference オブジェクトで進行中のアップロード処理またはダウンロード処理を取り消します。
FileReference
 Inherited
イベントをイベントフローに送出します。
EventDispatcher
  
download(request:URLRequest, defaultFileName:String = null):void
リモートサーバーからファイルをダウンロードするためのダイアログボックスを開きます。
FileReference
 Inherited
EventDispatcher オブジェクトに、特定のイベントタイプに対して登録されたリスナーがあるかどうかを確認します。
EventDispatcher
 Inherited
オブジェクトに指定されたプロパティが定義されているかどうかを示します。
Object
 Inherited
Object クラスのインスタンスが、パラメーターとして指定されたオブジェクトのプロトタイプチェーン内にあるかどうかを示します。
Object
  
ユーザーが選択したローカルファイルの読み込みを開始します。
FileReference
 Inherited
指定されたプロパティが存在し、列挙できるかどうかを示します。
Object
 Inherited
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
EventDispatcher オブジェクトからリスナーを削除します。
EventDispatcher
  
ファイルシステムにアクセスする権限を要求します。
FileReference
  
save(data:*, defaultFileName:String = null):void
ローカルファイルシステムにファイルを保存するためのダイアログボックスを開きます。
FileReference
 Inherited
ループ処理に対するダイナミックプロパティの可用性を設定します。
Object
 Inherited
ロケール固有の規則に従って書式設定された、このオブジェクトのストリング表現を返します。
Object
 Inherited
指定されたオブジェクトのストリング表現を返します。
Object
  
upload(request:URLRequest, uploadDataFieldName:String = "Filedata", testUpload:Boolean = false):void
リモートサーバーへのファイルのアップロードを開始します。
FileReference
  
ファイルをエンコードせずに URL へのアップロードを開始します。
FileReference
 Inherited
指定されたオブジェクトのプリミティブな値を返します。
Object
 Inherited
指定されたイベントタイプについて、この EventDispatcher オブジェクトまたはその祖先にイベントリスナーが登録されているかどうかを確認します。
EventDispatcher
イベント
 イベント 概要 定義元
 Inherited[ブロードキャストイベント] Flash Player または AIR アプリケーションがオペレーティングシステムのフォーカスを取得して、アクティブになったときに送出されます。EventDispatcher
  ユーザーがアップロードまたはダウンロードするファイルをファイル参照ダイアログボックスからキャンセルしたときに送出されます。FileReference
  ダウンロードが完了、またはアップロードで HTTP ステータスコード 200 が生成された場合に送出されます。FileReference
 Inherited[ブロードキャストイベント] Flash Player または AIR アプリケーションがオペレーティングシステムのフォーカスを失って、非アクティブになったときに送出されます。EventDispatcher
  upload() または uploadUnencoded() メソッドを呼び出して HTTP を介してデータにアクセスを試み、Adobe AIR で要求のステータスコードを検出して返すことができる場合に送出されます。FileReference
  アップロードに失敗し、HTTP ステータスコードを使用して失敗を記述することができない場合に送出されます。FileReference
  アップロードまたはダウンロードが失敗したときに送出されます。FileReference
  アップロード処理またはダウンロード処理が開始するときに送出されます。FileReference
  ファイルシステムにアクセスする権限をアプリケーションから要求したときに送出されます。FileReference
  ファイルのアップロード処理中またはダウンロード処理中に定期的に送出されます。FileReference
  FileReference.upload() または FileReference.download() メソッドの呼び出しによって、サーバーにファイルをアップロードするか、呼び出し元のセキュリティサンドボックスの外部にあるサーバーからファイルを取得しようとしたときに送出されます。FileReference
  ユーザーがアップロードするファイルまたはダウンロードするファイルをファイル参照ダイアログボックスから選択したときに、送出されます。FileReference
  アップロードの正常終了後、サーバーからデータを受信したときに送出されます。FileReference
プロパティの詳細

creationDate

プロパティ
creationDate:Date  [読み取り専用]

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0, Flash Player 9

ローカルディスク上に存在するファイルの作成日です。オブジェクトに値が設定されていない場合に、このプロパティの値を取得する呼び出しが行われると null が返されます。

注意:オペレーティングシステムのプロパティとして creationDate が指定されていない場合は、CreationDatelastModifiedDate に等しくなります。



実装
    public function get creationDate():Date

例外
IllegalOperationError FileReference.browse()FileReferenceList.browse()、または FileReference.download() メソッドの呼び出しが失敗すると、例外がスローされ、関数の呼び出しシーケンスが正しくないこと、または以前の呼び出しが失敗したことを知らせるメッセージが送信されます。この場合、creationDate プロパティの値は null です。
 
IOError — ファイル情報にアクセスできない場合、I/O エラーを示すメッセージとともにエラーがスローされます。

関連する API エレメント

creator

プロパティ 
creator:String  [読み取り専用]

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0, Flash Player 9

ファイルの Macintosh クリエータータイプです。Macintosh クリエータータイプは、Mac OS X より前のバージョンの Mac OS でのみ使用されます。Windows または Linux では、このプロパティは null です。FileReference オブジェクトに値が設定されていない場合に、このプロパティの値を取得する呼び出しが行われると null を返します。



実装
    public function get creator():String

例外
IllegalOperationError — Macintosh では、FileReference.browse()FileReferenceList.browse()、または FileReference.download() メソッドの呼び出しが失敗すると、例外がスローされ、関数の呼び出しシーケンスが正しくないこと、または以前の呼び出しが失敗したことを知らせるメッセージが送信されます。この場合、creator プロパティの値は null です。

関連する API エレメント

data

プロパティ 
data:ByteArray  [読み取り専用]

言語バージョン: ActionScript 3.0
ランタイムバージョン: Flash Player 10, AIR 1.5

load() メソッドの呼び出しが成功した後に読み込まれるファイルからのデータを表す ByteArray オブジェクト。



実装
    public function get data():ByteArray

例外
IllegalOperationError load() メソッドの呼び出しが失敗すると、例外がスローされ、関数の呼び出しシーケンスが正しくないこと、または以前の呼び出しが失敗したことを知らせるメッセージが送信されます。この場合、data プロパティの値は null です。
 
IOError — ファイルを開くことや読み取ることができない場合、またはファイルへのアクセスで同様のエラーが発生した場合、例外がスローされ、ファイルの I/O エラーを知らせるメッセージが送信されます。この場合、data プロパティの値は null です。

関連する API エレメント

    

extension

プロパティ 
extension:String  [読み取り専用]

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0

ファイル名拡張子です。

ファイルの拡張子は、名前内の最後のドット(".")の後の部分です(ドットは含みません)。ファイル名内にドットがない場合、拡張子は null です。

注意:ファイルのタイプを確認するには、extension プロパティを使用する必要があります。creator プロパティまたは type プロパティは使用しないでください。creator プロパティと type プロパティは非推奨のプロパティと考えてください。これらのプロパティは、Mac OS の古いバージョンに適用されます。



実装
    public function get extension():String

例外
IllegalOperationError — 参照が初期化されていない場合。

modificationDate

プロパティ 
modificationDate:Date  [読み取り専用]

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0, Flash Player 9, Flash Player 9

ローカルディスク上に存在するファイルの最終変更日です。FileReference オブジェクトに値が設定されていない場合に、このプロパティの値を取得する呼び出しが行われると null を返します。



実装
    public function get modificationDate():Date

例外
IllegalOperationError FileReference.browse()FileReferenceList.browse()、または FileReference.download() メソッドの呼び出しが失敗すると、例外がスローされ、関数の呼び出しシーケンスが正しくないこと、または以前の呼び出しが失敗したことを知らせるメッセージが送信されます。この場合、modificationDate プロパティの値は null です。
 
IOError — ファイル情報にアクセスできない場合、I/O エラーを示すメッセージとともにエラーがスローされます。

関連する API エレメント

name

プロパティ 
name:String  [読み取り専用]

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0, Flash Player 9

ローカルディスク上に存在するファイルの名前です。(FileReference.download() または FileReference.browse() の有効な呼び出しにより) FileReference オブジェクトに値が設定されていない場合にこのプロパティの値を取得しようとすると、Flash Player はエラーをスローします。

FileReference オブジェクトのすべてのプロパティの値は、browse() メソッドを呼び出すことにより設定されます。download() メソッドを呼び出した場合、FileReference の他のプロパティと異なり、name プロパティの値は select イベントが送出されたときに設定されます。



実装
    public function get name():String

例外
IllegalOperationError FileReference.browse()FileReferenceList.browse() または FileReference.download() メソッドの呼び出しが失敗すると、例外がスローされ、関数の呼び出しシーケンスが正しくないこと、または以前の呼び出しが失敗したことを知らせるメッセージが送信されます。

関連する API エレメント

    

permissionStatus

プロパティ 
permissionStatus:String  [読み取り専用]

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 24.0

ファイルシステムにアクセスする権限をアプリケーションが付与されたかどうかを判定します。



実装
    public static function get permissionStatus():String

関連する API エレメント

size

プロパティ 
size:Number  [読み取り専用]

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0, Flash Player 9

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

注意:ActionScript 3.0 の初期のバージョンでは、size プロパティは、4 GB 程度までのサイズのファイルをサポートする uint オブジェクトとして定義されていました。現在では、それよりも大きいファイルをサポートする Number オブジェクトとして実装されています。



実装
    public function get size():Number

例外
IllegalOperationError FileReference.browse()FileReferenceList.browse() または FileReference.download() メソッドの呼び出しが失敗すると、例外がスローされ、関数の呼び出しシーケンスが正しくないこと、または以前の呼び出しが失敗したことを知らせるメッセージが送信されます。
 
IOError — ファイルを開くことや読み取ることができない場合、またはファイルへのアクセスで同様のエラーが発生した場合、例外がスローされ、ファイルの I/O エラーを知らせるメッセージが送信されます。

関連する API エレメント

type

プロパティ 
type:String  [読み取り専用]

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0, Flash Player 9

ファイル形式です。

Windows または Linux の場合、このプロパティはファイル拡張子になります。Macintosh では、このプロパティは 4 文字のファイルタイプです。これは、Mac OS X より前のバージョンの Mac OS でのみ使用されます。FileReference オブジェクトに値が設定されていない場合に、このプロパティの値を取得する呼び出しを行うと、null が返されます。

Windows、Linux および Mac OS X の場合、ファイル拡張子(name プロパティの、最後のドット(.)の後の部分)でファイル形式を示します。



実装
    public function get type():String

例外
IllegalOperationError FileReference.browse()FileReferenceList.browse()、または FileReference.download() メソッドの呼び出しが失敗すると、例外がスローされ、関数の呼び出しシーケンスが正しくないこと、または以前の呼び出しが失敗したことを知らせるメッセージが送信されます。この場合、type プロパティの値は null です。

関連する API エレメント

コンストラクターの詳細

FileReference

()コンストラクター
public function FileReference()

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0, Flash Player 9

新しい FileReference オブジェクトを作成します。設定されると、FileReference オブジェクトはユーザーのローカルディスク上のファイルを表します。

関連する API エレメント

メソッドの詳細

browse

()メソッド
public function browse(typeFilter:Array = null):Boolean

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0, Flash Player 9

アップロードするファイルを選択できるファイル参照ダイアログボックスを表示します。このダイアログボックスは、オペレーティングシステムのネイティブのダイアログボックスです。ユーザーは、例えば Windows の UNC パスを使用して、ローカルコンピューターまたは他のコンピューターからファイルを選択できます。

注意:Adobe AIR で利用可能な File クラスにはさらに固有のシステムファイル選択ダイアログボックスにアクセスするためのメソッドが含まれています。 これらのメソッドは File.browseForDirectory()File.browseForOpen()File.browseForOpenMultiple()、および File.browseForSave() です。

このメソッドを呼び出して、ユーザーが正常にファイルを選択すると、この FileReference オブジェクトのプロパティにそのファイルのプロパティが設定されます。これ以降 FileReference.browse() メソッドが呼び出されるたびに、FileReference オブジェクトのプロパティは、ダイアログボックスでユーザーが選択したファイルに再設定されます。一度に 1 つの browse() セッションまたは download() セッションだけを実行できます。これは、一度に 1 つのダイアログボックスしか呼び出せないからです。

どのファイルをダイアログボックスに表示するかを決定するために、typeFilter パラメーターを使用できます。

Flash Player 10 および Flash Player 9 Update 5 では、このメソッドの呼び出しは、マウスのクリックやキー入力などのユーザーイベントに応じてイベントハンドラーで呼び出した場合にのみ成功します。それ以外の場合は、このメソッドを呼び出すと、Flash Player から例外がスローされます。

Flash Player に追加された新しい機能により、Flash Player 10 にパブリッシュする場合は、FileReference.browse()FileReference.upload()FileReference.download()FileReference.load() および FileReference.save() の中で、同時に実行できる操作は 1 つのみです。複数の操作を実行すると、Flash Player でランタイムエラー(コード 2174)が発生します。進行中の操作を停止するには、FileReference.cancel() を使用します。この制限は Flash Player 10 にのみ適用されます。以前のバージョンの Flash Player については、同時に複数の操作を実行しても、この制限には影響されません。

Adobe AIR では、ファイル参照ダイアログボックスは他のウィンドウによって「所有されている」(owner プロパティが null 以外に設定されている)ウィンドウの前面に常に表示されるとは限りません。ウィンドウの表示順序の問題を回避するには、このメソッドを呼び出す前に所有されているウィンドウを非表示にします。

パラメーター

typeFilter:Array (default = null) — ダイアログボックスに表示するファイルをフィルターにかける場合に使用する FileFilter インスタンスの配列です。このパラメーターを省略すると、すべてのファイルが表示されます。詳細については、FileFilter クラスを参照してください。

戻り値
Boolean — パラメーターが有効で、ファイル参照ダイアログボックスが表示された場合に、true を返します。

イベント
select:Event — ユーザーが「参照」ファイル選択からアイテムを正しく選択すると、送出されます。
 
cancel:Event — ユーザーがファイルアップロードの参照ウィンドウをキャンセルすると、送出されます。

例外
IllegalOperationError — 次の状況でスローされます。1)他の FileReference ブラウズセッション、または FileReferenceList ブラウズセッションが進行中の場合。ファイルブラウズのセッションは、一度に 1 つのみ実行できます。2)ユーザーの mms.cfg ファイルの設定により、この操作が禁止されている場合。
 
ArgumentError typeFilter 配列に、不正な形式の FileFilter オブジェクトが含まれていると、例外がスローされます。FileFilter オブジェクトの正しい形式の詳細については、FileFilter クラスを参照してください。
 
Error — マウスイベントやキー入力イベントなどのユーザー操作に応じてメソッドが呼び出されない場合。

関連する API エレメント

select event
cancel event
FileReference.download()
FileReferenceList.browse()
File.browseForDirectory()
File.browseForOpen()
File.browseForOpenMultiple()
File.browseForSave()

cancel

()メソッド 
public function cancel():void

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0, Flash Player 9

この FileReference オブジェクトで進行中のアップロード処理またはダウンロード処理を取り消します。このメソッドを呼び出しても cancel イベントは送出されません。このイベントは、ユーザーがファイルアップロードまたはダウンロードのダイアログボックスを閉じて処理をキャンセルした場合にのみ送出されます。

download

()メソッド 
public function download(request:URLRequest, defaultFileName:String = null):void

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0, Flash Player 9

リモートサーバーからファイルをダウンロードするためのダイアログボックスを開きます。Flash Player ではアップロードまたはダウンロードできるファイルのサイズに制限はありませんが、このプレーヤーが正式にサポートしているアップロードまたはダウンロードのサイズは最大 100 MB です。

download() メソッドは、まず、オペレーティングシステムのダイアログボックスを表示して、ユーザーにファイル名を入力してもらった後、ファイルの保存先となるローカルコンピューター上の場所を選択してもらいます。ユーザーが保存場所を選択し、「保存」などをクリックして、ファイルをローカルに保存することを確認すると、リモートサーバーからのダウンロードが開始します。リスナーは、ダウンロードが進行中なのか、成功したのか、失敗したのかを示すイベントを受け取ります。download() を呼び出した後にダイアログボックスやダウンロード処理の状態を確認するには、コードで cancelopenprogresscomplete などのイベントをリッスンする必要があります。

FileReference.upload() 関数と FileReference.download() 関数はノンブロッキング処理を行います。これらの関数は呼び出された後、ファイル転送が完了する前に返されます。さらに、FileReference オブジェクトがスコープ外に移動した場合、そのオブジェクトに対して完了していないアップロードまたはダウンロードは、スコープから離れた時点でキャンセルされます。アップロードまたはダウンロードの続行を期待できる限りは、FileReference オブジェクトがスコープ内にあることを確認してください。

ファイルが正常にダウンロードされると、FileReference オブジェクトのプロパティにローカルファイルのプロパティが設定されます。ダウンロードが成功した場合、complete イベントが送出されます。

一度に 1 つの browse() セッションまたは download() セッションだけを実行できます。これは、一度に 1 つのダイアログボックスしか呼び出せないからです。

このメソッドは、どのファイルタイプのダウンロードにも対応しており、HTTP と HTTPS のいずれも使用できます。

一般的な予約ポートには接続できません。遮断されたポートの詳しいリストについては、『ActionScript 3.0 開発ガイド』の「ネットワーク API の制限」を参照してください。

注意:サーバーでユーザー認証が必要な場合、ブラウザー内で実行される、つまり、ブラウザープラグインまたは ActiveX コントロールを使用する SWF ファイルでのみ、認証用のユーザー名とパスワードをユーザーが入力できるダイアログボックスを表示できます。ただし、それはダウンロードの場合のみです。プラグインまたは ActiveX コントロールを使用するアップロードの場合、または、スタンドアローンまたは外部 Player を使用するアップロードとダウンロードの場合、ファイル転送は失敗します。

このメソッドを使用するときは、Flash Player セキュリティモデルを考慮してください。

  • 呼び出し元 SWF ファイルが信頼されないコードとしてローカルのサンドボックスに置かれている場合、ロード操作は実行できません。
  • デフォルトの動作では、サンドボックス間のアクセスは拒否されます。URL ポリシーファイルを追加することによって、Web サイトでリソースにアクセスできるようになります。
  • SWF ファイルがこのメソッドを使用しないようにするには、SWF コンテンツを含んでいる HTML ページに allowNetworking パラメーター(object タグおよび embed タグのパラメーター)を設定します。
  • Flash Player 10 および Flash Player 9 Update 5 では、このメソッドの呼び出しは、マウスのクリックやキー入力などのユーザーイベントに応じてイベントハンドラーで呼び出した場合にのみ成功します。それ以外の場合は、このメソッドを呼び出すと、Flash Player から例外がスローされます。

ただし、Adobe AIR では、application セキュリティサンドボックス内のコンテンツ(AIR アプリケーションと共にインストールされたコンテンツ)は、これらのセキュリティ制限による制限を受けません。

セキュリティについて詳しくは、Flash Player デベロッパーセンターのトピック:セキュリティを参照してください。

このメソッドを使用してファイルをダウンロードすると、ダウンロードされたファイルにフラグを付けるオペレーティングシステムにダウンロードされたというフラグが付きます。

  • Windows XP Service Pack 2 以降および Windows Vista
  • Mac OS 10.5 以降

Linux などの一部のオペレーティングシステムは、ダウンロードされたファイルにフラグを付けません。

Flash Player に追加された新しい機能により、Flash Player 10 にパブリッシュする場合は、FileReference.browse()FileReference.upload()FileReference.download()FileReference.load() および FileReference.save() の中で、同時に実行できる操作は 1 つのみです。複数の操作を実行すると、Flash Player でランタイムエラー(コード 2174)が発生します。進行中の操作を停止するには、FileReference.cancel() を使用します。この制限は Flash Player 10 にのみ適用されます。以前のバージョンの Flash Player については、同時に複数の操作を実行しても、この制限には影響されません。

Adobe AIR では、ダウンロードダイアログボックスは他のウィンドウによって「所有」されている(owner プロパティが null 以外に設定されている)ウィンドウの前面に常に表示されるとは限りません。ウィンドウの表示順序の問題を回避するには、このメソッドを呼び出す前に所有されているウィンドウを非表示にします。

パラメーター

request:URLRequest — URLRequest オブジェクトです。URLRequest オブジェクトの url プロパティには、ローカルコンピューターにダウンロードするファイルの URL を設定する必要があります。このパラメーターが null の場合、例外がスローされます。URLRequest オブジェクトの requestHeaders プロパティは無視されるため、カスタム HTTP リクエストヘッダーはアップロードまたはダウンロードでサポートされません。POST パラメーターまたは GET パラメーターをサーバーに送信するには、URLRequest.data の値に任意のパラメーターを設定し、URLRequest.methodURLRequestMethod.POST または URLRequestMethod.GET を設定します。

一部のブラウザーでは、URL ストリングの長さに制限があるものがあります。長さが 256 文字を超える場合、一部のブラウザーまたはサーバーでは失敗する場合があります。

 
defaultFileName:String (default = null) — ダウンロードするファイルとしてダイアログボックスに表示するデフォルトファイル名です。このストリングに、文字 / \ : * ? " < > | % を含めないでください。

このパラメーターを省略すると、リモート URL のファイル名が構文解析されて、デフォルトとして使用されます。


イベント
open:Event — ダウンロード処理が開始したときに送出されます。
 
progress:ProgressEvent — ファイルのダウンロード処理中に定期的に送出されます。
 
complete:Event — ファイルのダウンロード処理が正常に完了したときに送出されます。
 
cancel:Event — ユーザーがダイアログボックスを閉じると、送出されます。
 
select:Event — ダウンロードするファイルをユーザーがダイアログボックスから選択すると、送出されます。
 
securityError:SecurityErrorEvent — セキュリティエラーが原因でダウンロードが失敗したときに送出されます。
 
ioError:IOErrorEvent — 次のいずれかの理由で送出されます。
  • ファイルの読み込み中または転送中に入出力エラーが発生した場合。
  • Flash Player のスタンドアローンバージョンまたは外部バージョンで実行される SWF コンテンツが、認証が必要なサーバーからファイルをダウンロードしようとした場合。ダウンロードする際、スタンドアローンまたは外部 Player には、ユーザーがパスワードを入力する手段がありません。認証が必要なサーバーに対して、これらの Player 内の SWF がファイルをダウンロードしようとすると、ダウンロードは失敗します。ファイルのダウンロードは、ActiveX コントロール Player やブラウザープラグイン Player でのみ成功する可能性があります。

例外
IllegalOperationError — 次の状況でスローされます。1)他のブラウズセッションが進行中の場合。ファイルブラウズのセッションは、一度に 1 つのみ実行できます。2) request に渡された値に、無効なパスまたはプロトコルが含まれている場合。3) ダウンロードするファイルの名前に禁止文字が含まれている場合。4) ユーザーの mms.cfg ファイルの設定により、この操作が禁止されている場合。
 
SecurityError — 信頼されていないローカルコンテンツはインターネットへの接続を許可されません。この問題を回避するには、この SWF ファイルを、ネットワークアクセスを許可されたローカル SWF ファイル、または信頼できる SWF ファイルとして再分類します。この例外がスローされると、ローカルファイルのセキュリティ制限が原因でアクセスできないファイル名および URL を示すメッセージが送信されます。
 
SecurityError — 一般的な予約ポートには接続できません。遮断されたポートの詳しいリストについては、『ActionScript 3.0 開発ガイド』の「ネットワーク API の制限」を参照してください。
 
ArgumentError url.data が ByteArray 型の場合、例外がスローされます。FileReference.upload() メソッドおよび FileReference.download() メソッドと一緒に使用する場合、url.data は URLVariables 型または String 型のみになります。
 
MemoryError — このエラーは、次の理由で発生する可能性があります。1) Flash Player では URLRequest.data パラメーターを UTF8 から MBCS に変換できません。このエラーは、FileReference.download() メソッドに渡された URLRequest オブジェクトが GET 操作を行うように設定されている場合、および System.useCodePagetrue に設定されている場合に発生することがあります。2) Flash Player では POST データにメモリを割り当てることができません。このエラーは、FileReference.download() メソッドに渡された URLRequest オブジェクトが POST 操作を行うように設定されている場合に発生することがあります。
 
Error — マウスイベントやキー入力イベントなどのユーザー操作に応じてメソッドが呼び出されない場合。

関連する API エレメント


例  ( この例の使用方法 )

次の例で、download イベントオブジェクトの使用方法を示します。この例を実行するには、downloadURL.url プロパティを変更して、架空の http://www ではなく実際のドメインとファイルを参照するようにします。[yourDomain].com/SomeFile.pdf. 「ローカルでの再生に関するセキュリティ」を「ネットワークにのみアクセスする」に設定して SWF ファイルをコンパイルする必要がある場合もあります。または Flash Player のセキュリティ設定を更新して、このファイルのネットワークアクセスを許可する必要がある場合があります。
package {
    import flash.display.Sprite;
    import flash.events.*;
    import flash.net.FileReference;
    import flash.net.URLRequest;
    import flash.net.FileFilter;

    public class FileReference_download extends Sprite {
        private var downloadURL:URLRequest;
        private var fileName:String = "SomeFile.pdf";
        private var file:FileReference;

        public function FileReference_download() {
            downloadURL = new URLRequest();
            downloadURL.url = "http://www.[yourDomain].com/SomeFile.pdf";
            file = new FileReference();
            configureListeners(file);
            file.download(downloadURL, fileName);
        }

        private function configureListeners(dispatcher:IEventDispatcher):void {
            dispatcher.addEventListener(Event.CANCEL, cancelHandler);
            dispatcher.addEventListener(Event.COMPLETE, completeHandler);
            dispatcher.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
            dispatcher.addEventListener(Event.OPEN, openHandler);
            dispatcher.addEventListener(ProgressEvent.PROGRESS, progressHandler);
            dispatcher.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);
            dispatcher.addEventListener(Event.SELECT, selectHandler);
        }

        private function cancelHandler(event:Event):void {
            trace("cancelHandler: " + event);
        }

        private function completeHandler(event:Event):void {
            trace("completeHandler: " + event);
        }

        private function ioErrorHandler(event:IOErrorEvent):void {
            trace("ioErrorHandler: " + event);
        }

        private function openHandler(event:Event):void {
            trace("openHandler: " + event);
        }

        private function progressHandler(event:ProgressEvent):void {
            var file:FileReference = FileReference(event.target);
            trace("progressHandler name=" + file.name + " bytesLoaded=" + event.bytesLoaded + " bytesTotal=" + event.bytesTotal);
        }

        private function securityErrorHandler(event:SecurityErrorEvent):void {
            trace("securityErrorHandler: " + event);
        }

        private function selectHandler(event:Event):void {
            var file:FileReference = FileReference(event.target);
            trace("selectHandler: name=" + file.name + " URL=" + downloadURL.url);
        }
    }
}

load

()メソッド 
public function load():void

言語バージョン: ActionScript 3.0
ランタイムバージョン: Flash Player 10, AIR 1.5

ユーザーが選択したローカルファイルのロードを開始します。Flash Player ではアップロード、ダウンロード、ロードまたは保存できるファイルのサイズに制限はありませんが、正式にサポートしているサイズは最大 100 MB です。コンテンツを Flash Player で実行する場合は、FileReference.browse() メソッドまたは FileReferenceList.browse() メソッドを呼び出してから、load() メソッドを呼び出す必要があります。一方、コンテンツをアプリケーションサンドボックスの AIR で実行する場合は、File オブジェクトの load() メソッドを呼び出す前に、browse() メソッドを呼び出す必要はありません。AIR の File クラスが、FileReference クラスを拡張します。

リスナーは、読み込み処理が進行中なのか、成功したのか、失敗したのかを示すイベントを受け取ります。FileReferenceList オブジェクトを使用すると、ユーザーが読み込むファイルを複数選択できるようになりますが、ファイルは 1 つずつ読み込む必要があります。個別にファイルを読み込むには、FileReference オブジェクトの FileReferenceList.fileList 配列を繰り返し処理します。

Adobe AIR にはまた、ファイルを読み込むためのさらに多くのオプションを提供する FileStream クラスが含まれています。

FileReference.upload() 関数、FileReference.download() 関数、FileReference.load() 関数および FileReference.save() 関数はノンブロッキング処理を行います。 これらの関数は呼び出された後、ファイル転送が完了する前に返されます。さらに、FileReference オブジェクトがスコープ外に移動した場合、そのオブジェクトに対して完了していないトランザクションは、スコープから離れた時点でキャンセルされます。アップロード、ダウンロード、読み込みまたは保存の続行を期待できる限りは、FileReference オブジェクトがスコープ内にあることを確認してください。

ファイルのロードが正常に終了すると、コンテンツは FileReference オブジェクトの data プロパティにバイト配列として格納されます。

次のセキュリティに関する考慮事項が適用されます。

  • 呼び出し元 SWF ファイルが信頼されないコードとしてローカルのサンドボックスに置かれている場合、ロード操作は実行できません。
  • デフォルトの動作では、サンドボックス間のアクセスは拒否されます。クロスドメインポリシーファイルを追加することによって、Web サイトでリソースにアクセスできるようになります。
  • ファイルがこのメソッドを使用しないようにするには、SWF コンテンツを含む HTML ページに allowNetworking パラメーター(object タグおよび embed タグ)を設定します。

ただし、これらの考慮事項はアプリケーションサンドボックス内の AIR コンテンツには適用されません。

Flash Player 10 または AIR 1.5 にパブリッシュする場合は、FileReference.browse()FileReference.upload()FileReference.download()FileReference.load()FileReference.save() の中で同時に実行できる操作は 1 つのみです。複数の操作を実行すると、アプリケーションでランタイムエラー(コード 2174)が発生します。進行中の操作を停止するには、FileReference.cancel() を使用します。この制限は Flash Player 10 および AIR 1.5 にのみ適用されます。Flash Player または AIR の以前のバージョンは同時に複数の操作を実行しても、この制限には影響されません。

Adobe AIR では、ファイル参照ダイアログボックスは他のウィンドウによって「所有されている」(owner プロパティが null 以外に設定されている)ウィンドウの前面に常に表示されるとは限りません。ウィンドウの表示順序の問題を回避するには、このメソッドを呼び出す前に所有されているウィンドウを非表示にします。


イベント
open:Event — 読み込み処理が開始したときに送出されます。
 
progress:ProgressEvent — ファイルの読み込み処理中に定期的に送出されます。
 
complete:Event — ファイルの読み込み処理が正常に完了したときに送出されます。
 
ioError:IOErrorEvent — アプリケーションによるファイルの読み込み中または書き込み中に入出力エラーにより読み込みが失敗した場合に呼び出されます。

例外
IllegalOperationError — 次の状況でスローされます。1)他の FileReference ブラウズセッション、または FileReferenceList ブラウズセッションが進行中の場合。ファイルブラウズのセッションは、一度に 1 つのみ実行できます。2)ユーザーの mms.cfg ファイルの設定により、この操作が禁止されている場合。
 
MemoryError — このエラーは、アプリケーションがファイルにメモリを割り当てることができない場合に発生することがあります。ファイルが大きすぎるか、または使用可能なメモリが少なすぎる可能性があります。

関連する API エレメント


例  ( この例の使用方法 )

次の例は、ローカルファイルシステム内の画像をルート表示オブジェクト(この場合はステージ)にアップロードします。例は、Andre Venancio 氏の提供によるものです。
var buttonShape:Shape = new Shape();
buttonShape.graphics.beginFill(0x336699);
buttonShape.graphics.drawCircle(50, 50, 25);
var button = new SimpleButton(buttonShape, buttonShape, buttonShape, buttonShape);
addChild(button);

var fileRef:FileReference= new FileReference();
button.addEventListener(MouseEvent.CLICK, onButtonClick);

function onButtonClick(e:MouseEvent):void {
fileRef.browse([new FileFilter("Images", "*.jpg;*.gif;*.png")]);
fileRef.addEventListener(Event.SELECT, onFileSelected);
}

function onFileSelected(e:Event):void {
fileRef.addEventListener(Event.COMPLETE, onFileLoaded);
fileRef.load();
}

function onFileLoaded(e:Event):void {
var loader:Loader = new Loader();
loader.loadBytes(e.target.data);
addChild(loader);
}

    requestPermission

()メソッド 
public function requestPermission():void

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 24.0

ファイルシステムにアクセスする権限を要求します。


イベント
PermissionStatus:PermissionEvent — 要求された権限がユーザーによって付与/拒否されたときに送出されます。

save

()メソッド 
public function save(data:*, defaultFileName:String = null):void

言語バージョン: ActionScript 3.0
ランタイムバージョン: Flash Player 10, AIR 1.5

ローカルファイルシステムにファイルを保存するためのダイアログボックスを開きます。Flash Player ではアップロード、ダウンロード、ロードまたは保存できるファイルのサイズに制限はありませんが、このプレーヤーが正式にサポートしているサイズは最大 100 MB です。

save() メソッドは、まず、オペレーティングシステムのダイアログボックスを表示して、ユーザーにファイル名を入力してもらった後、ファイルの保存先となるローカルコンピューター上の場所を選択してもらいます。ユーザーが保存場所を選択し、「保存」などをクリックして、ファイルをローカルに保存することを確認すると、保存処理が開始されます。リスナーは、保存処理が進行中なのか、成功したのか、失敗したのかを示すイベントを受け取ります。save() を呼び出した後のダイアログボックスや保存処理の状態を確認するには、コードで cancelopenprogress および complete などのイベントを待機する必要があります。

Adobe AIR にはまた、ファイルをローカルで保存するためのさらに多くのオプションを提供する FileStream クラスが含まれています。

FileReference.upload() 関数、FileReference.download() 関数、FileReference.load() 関数および FileReference.save() 関数はノンブロッキング処理を行います。 これらの関数は呼び出された後、ファイル転送が完了する前に返されます。さらに、FileReference オブジェクトがスコープ外に移動した場合、そのオブジェクトに対して完了していないトランザクションは、スコープから離れた時点でキャンセルされます。アップロード、ダウンロード、読み込みまたは保存の続行を期待できる限りは、FileReference オブジェクトがスコープ内にあることを確認してください。

ファイルが正常に保存されると、FileReference オブジェクトのプロパティにローカルファイルのプロパティが設定されます。保存が成功した場合、complete イベントが送出されます。

一度に 1 つの browse() セッションまたは save() セッションだけを実行できます。これは、一度に 1 つのダイアログボックスしか呼び出せないからです。

Flash Player では、このメソッドの呼び出しは、マウスのクリックやキー入力などのユーザーイベントに応じてイベントハンドラーで呼び出した場合にのみ成功します。それ以外の場合は、このメソッドを呼び出すと、Flash Player から例外がスローされます。この制限は、アプリケーションサンドボックス内の AIR コンテンツには適用されません。

Adobe AIR では、保存ダイアログボックスは他のウィンドウによって「所有」されている(owner プロパティが null 以外に設定されている)ウィンドウの前面に常に表示されるとは限りません。ウィンドウの表示順序の問題を回避するには、このメソッドを呼び出す前に所有されているウィンドウを非表示にします。

パラメーター

data:* — 保存されるデータです。データは複数の形式のうちのいずれかになり、以下のように適切に処理されます。
  • 値が null である場合、アプリケーションにより ArgumentError 例外がスローされます。
  • 値が String の場合は、UTF-8 テキストファイルとして保存されます。
  • 値が XML の場合は、XML 形式でテキストファイルに書き込まれます。形式はすべて保持されます。
  • 値が ByteArray オブジェクトの場合は、データファイルにそのまま書き込まれます。
  • 値が上記のいずれでもない場合、save() メソッドはオブジェクトの toString() メソッドを呼び出し、データをストリングに変換して、データをテキストファイルとして保存します。これに失敗すると、アプリケーションにより ArgumentError 例外がスローされます。
 
defaultFileName:String (default = null) — 保存するファイルとしてダイアログボックスに表示するデフォルトファイル名です。このストリングに、文字 / \ : * ? " < > | % を含めないでください。

File オブジェクトがこのメソッドを呼び出すと、ファイル名は File オブジェクトが参照するファイルの名前になります(AIR File クラスは FileReference クラスを拡張します)。


イベント
open:Event — ダウンロード処理が開始したときに送出されます。
 
progress:ProgressEvent — ファイルのダウンロード処理中に定期的に送出されます。
 
complete:Event — ファイルのダウンロード処理が正常に完了したときに送出されます。
 
cancel:Event — ユーザーがダイアログボックスを閉じると、送出されます。
 
select:Event — ダウンロードするファイルをユーザーがダイアログボックスから選択すると、送出されます。
 
ioError:IOErrorEvent — ファイルの読み込み中または転送中に入出力エラーが発生した場合に送出されます。

例外
IllegalOperationError — 次の状況でスローされます。1)他のブラウズセッションが進行中の場合。ファイルブラウズのセッションは、一度に 1 つのみ実行できます。2)ダウンロードするファイルの名前に禁止文字が含まれている場合。3)ユーザーの mms.cfg ファイルの設定により、この操作が禁止されている場合。
 
ArgumentError data が ByteArray 型ではなく、toString() メソッドを持たない場合、例外がスローされます。data が XML 型ではなく、toXMLString() メソッドを持たない場合、例外がスローされます。
 
Error — マウスイベントやキー入力イベントなどのユーザー操作に応じてメソッドが呼び出されない場合。
 
MemoryError — このエラーは、Flash Player がファイルにメモリを割り当てることができない場合に発生することがあります。ファイルが大きすぎるか、または使用可能なメモリが少なすぎる可能性があります。

関連する API エレメント


例  ( この例の使用方法 )

次の例は、ファイルのテキストフィールドに入力されるコンテンツを保存します。この例では、編集可能なテキストフィールド(MyTextField)および編集できない別のテキストフィールド(MyButtonField)を作成して、マウスクリックに応答する「ボタン」として提供します。ユーザーは最初のテキストフィールドを編集して、テキストフィールドのコンテンツをローカルファイルに保存できます。 マウスクリックのイベントハンドラー clickhandlerFileReference.save() メソッド(MyFileReference という名前の FileReference オブジェクトの場合)を使用して、ユーザーの現在のオペレーティングシステム上でダイアログを開くので、ユーザーはコンテンツをユーザーが付ける名前でローカルファイルに保存できます。
var MyTextField:TextField = new TextField();
var MyButtonField:TextField = new TextField();
var MyFile:FileReference = new FileReference();

MyTextField.border = true;
MyTextField.type = TextFieldType.INPUT;

MyButtonField.background = true;
MyButtonField.backgroundColor = 0x339933;
MyButtonField.x = 150;
MyButtonField.height = 20;
MyButtonField.text = "Click here to save";

addChild(MyTextField);
addChild(MyButtonField);
MyButtonField.addEventListener(MouseEvent.CLICK, clickhandler);

function clickhandler(e:MouseEvent): void {
    MyFile.save(MyTextField.text);
}

upload

()メソッド 
public function upload(request:URLRequest, uploadDataFieldName:String = "Filedata", testUpload:Boolean = false):void

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0, Flash Player 9

リモートサーバーへのファイルのアップロードを開始します。Flash Player ではアップロードまたはダウンロードできるファイルのサイズに制限はありませんが、このプレーヤーが正式にサポートしているアップロードまたはダウンロードのサイズは最大 100 MB です。このメソッドを呼び出す前に、FileReference.browse() メソッドまたは FileReferenceList.browse() メソッドを呼び出す必要があります。

FileReference クラスを拡張する Adobe AIR File クラスの場合は、upload() メソッドを使用して任意のファイルをアップロードできます。Flash Player で使用される FileReference クラスの場合は、ユーザーは最初にファイルを選択する必要があります。

リスナーは、アップロードが進行中なのか、成功したのか、失敗したのかを示すイベントを受け取ります。FileReferenceList オブジェクトを使用すると、ユーザーが複数のファイルを選択してアップロードすることが可能になりますが、ファイルは 1 つずつアップロードする必要があります。この操作を実行するには、FileReference オブジェクトの FileReferenceList.fileList 配列で繰り返し処理を実行します。

FileReference.upload() 関数と FileReference.download() 関数はノンブロッキング処理を行います。これらの関数は呼び出された後、ファイル転送が完了する前に返されます。さらに、FileReference オブジェクトがスコープ外に移動した場合、そのオブジェクトに対して完了していないアップロードまたはダウンロードは、スコープから離れた時点でキャンセルされます。アップロードまたはダウンロードの続行を期待できる限りは、FileReference オブジェクトがスコープ内にあることを確認してください。

ファイルは、url パラメーターに渡された URL にアップロードされます。URL は、アップロードを許可するよう設定されたサーバースクリプトである必要があります。Flash Player は、HTTP POST メソッドを使用してファイルをアップロードします。アップロードを処理するサーバースクリプトは、次のエレメントを持つ POST リクエストを想定しています。

  • Content-Typemultipart/form-data
  • Content-Dispositionname 属性の設定がデフォルトの "Filedata"filename 属性の設定がオリジナルファイルの名前
  • ファイルのバイナリコンテンツ

一般的な予約ポートには接続できません。遮断されたポートの詳しいリストについては、『ActionScript 3.0 開発ガイド』の「ネットワーク API の制限」を参照してください。

POST 要求のサンプルについては、uploadDataFieldName パラメーターの説明を参照してください。POST パラメーターまたは GET パラメーターを、upload() メソッドを使用してサーバーに送信できます。request パラメーターの説明を参照してください。

testUpload パラメーターが true で、アップロード対象のファイルが約 10 KB を超える場合、Windows 用の Flash Player は、転送が成功するかどうか検証するために、実際のファイルをアップロードする前にテストアップロードとして中身がゼロの POST 処理を送信します。その後 Flash Player は、実際のファイル内容を含む 2 番目の POST 処理を送信します。10 KB 未満のファイルの場合、Flash Player は、アップロード対象の実際のファイル内容を含むアップロード POST を 1 回だけ実行します。Macintosh 用の Flash Player は、テストアップロードの POST 処理を実行しません。

注意:サーバーでユーザー認証が必要な場合、ブラウザー内で実行される、つまり、ブラウザープラグインまたは ActiveX コントロールを使用する SWF ファイルでのみ、認証用のユーザー名とパスワードをユーザーが入力できるダイアログボックスを表示できます。ただし、それはダウンロードの場合のみです。プラグインまたは ActiveX コントロールを使用するアップロードの場合、または、スタンドアローンまたは外部 Player を使用するアップロードとダウンロードの場合、ファイル転送は失敗します。

このメソッドを使用するときは、Flash Player セキュリティモデルを考慮してください。

  • 呼び出し元 SWF ファイルが信頼されないコードとしてローカルのサンドボックスに置かれている場合、ロード操作は実行できません。
  • デフォルトの動作では、サンドボックス間のアクセスは拒否されます。URL ポリシーファイルを追加することによって、Web サイトでリソースにアクセスできるようになります。
  • SWF ファイルがこのメソッドを使用しないようにするには、SWF コンテンツを含んでいる HTML ページに allowNetworking パラメーター(object タグおよび embed タグのパラメーター)を設定します。

ただし、Adobe AIR では、アプリケーションセキュリティサンドボックス内のコンテンツ(AIR アプリケーションと共にインストールされたコンテンツ)は、これらのセキュリティ制限による制限を受けません。

セキュリティについて詳しくは、Flash Player デベロッパーセンターのトピック:セキュリティを参照してください。

Flash Player に追加された新しい機能により、Flash Player 10 にパブリッシュする場合は、FileReference.browse()FileReference.upload()FileReference.download()FileReference.load() および FileReference.save() の中で、同時に実行できる操作は 1 つのみです。複数の操作を実行すると、Flash Player でランタイムエラー(コード 2174)が発生します。進行中の操作を停止するには、FileReference.cancel() を使用します。この制限は Flash Player 10 にのみ適用されます。以前のバージョンの Flash Player については、同時に複数の操作を実行しても、この制限には影響されません。

パラメーター

request:URLRequest — URLRequest オブジェクトです。URLRequest オブジェクトの url プロパティには、HTTP の POST 呼び出しを使用してアップロードを処理するように設定したサーバースクリプトの URL を設定する必要があります。一部のブラウザーでは、URL ストリングの長さに制限があるものがあります。長さが 256 文字を超える場合、一部のブラウザーまたはサーバーでは失敗する場合があります。このパラメーターが null の場合、例外がスローされます。URLRequest オブジェクトの requestHeaders プロパティは無視されるため、カスタム HTTP リクエストヘッダーはアップロードまたはダウンロードでサポートされません。

この URL では、HTTP または HTTPS(セキュアアップロード)を使用できます。HTTPS を使用するには、url パラメーターで HTTPS url を使用します。url パラメーターにポート番号を指定しない場合、HTTP の場合はポート 80、HTTPS の場合はポート 443 がデフォルトでは使用されます。

POST パラメーターまたは GET パラメーターをサーバーに送信するには、URLRequest オブジェクトの data プロパティに任意のパラメーターを設定し、method プロパティを URLRequestMethod.POST または URLRequestMethod.GET に設定します。

 
uploadDataFieldName:String (default = "Filedata") — アップロード POST 操作のファイルデータに先行するフィールド名です。uploadDataFieldName 値は、null 以外、空白以外のストリングである必要があります。デフォルトでは、uploadDataFieldName の値は "Filedata" です。次のサンプル POST 要求を参照してください。
    Content-Type: multipart/form-data; boundary=AaB03x
    --AaB03x 
    Content-Disposition: form-data; name="Filedata"; filename="example.jpg" 
    Content-Type: application/octet-stream
    ... contents of example.jpg ... 
    --AaB03x-- 
    
 
testUpload:Boolean (default = false) — テストファイルアップロードを要求するための設定です。testUploadtrue の場合、10 KB を超えるファイルに対し、Flash Player は、Content-Length を 0 としてテストファイルアップロードの POST を試行します。 テストアップロードでは、実際のファイルアップロードが成功するかどうか、必要な場合はサーバー認証が成功するかどうかがチェックされます。 テストアップロードは、Windows プレーヤーでのみ使用できます。


イベント
open:Event — アップロード処理が開始したときに送出されます。
 
progress:ProgressEvent — ファイルのアップロード処理中に定期的に送出されます。
 
complete:Event — ファイルのアップロード処理が正常に完了したときに送出されます。
 
uploadCompleteData:DataEvent — ファイルアップロードの正常終了後、サーバーからデータを受信したときに送出されます。
 
securityError:SecurityErrorEvent — セキュリティ侵害が原因でアップロードが失敗した場合に送出されます。
 
httpStatus:HTTPStatusEvent — HTTP エラーが原因でアップロードが失敗した場合に送出されます。
 
httpResponseStatus:HTTPStatusEvent — アップロード操作が正常に完了すると、サーバーは応答 URL と応答ヘッダーを返します。
 
ioError:IOErrorEvent — 次のいずれかの場合に呼び出されます。
  • Flash Player または Adobe AIR によるファイルの読み込み中、書き込み中、または転送中に入出力エラーが発生したためにアップロードが失敗した場合。
  • ユーザー名とパスワードなど、認証が必要なサーバーにファイルをアップロードしようとしたことが原因でアップロードが失敗した場合。アップロード中、ユーザーがパスワードを入力する方法はありません。
  • url パラメーターに無効なプロトコルが含まれるために、アップロードが失敗した場合。FileReference.upload() は HTTP または HTTPS を使用する必要があります。

例外
SecurityError — 信頼されていないローカル SWF ファイルはインターネットへの接続を許可されません。この問題を回避するには、この SWF ファイルを、ネットワークアクセスを許可されたローカル SWF ファイル、または信頼できる SWF ファイルとして再分類します。この例外がスローされると、アクセスできないローカルファイルの名前および URL を示すメッセージが送信されます。
 
SecurityError — 一般的な予約ポートには接続できません。遮断されたポートの詳しいリストについては、『ActionScript 3.0 開発ガイド』の「ネットワーク API の制限」を参照してください。
 
IllegalOperationError — 次の状況でスローされます。1)他の FileReference ブラウズセッション、または FileReferenceList ブラウズセッションが進行中の場合。ファイルブラウズのセッションは、一度に 1 つのみ実行できます。2) URL パラメーターが有効なパスまたはプロトコルでない場合。ファイルのアップロードでは HTTP を使用し、ファイルのダウンロードでは FTP または HTTP を使用する必要があります。3) uploadDataFieldName パラメーターが null に設定されている場合。4) ユーザーの mms.cfg ファイルの設定により、この操作が禁止されている場合。
 
ArgumentError — 次の状況でスローされます。1) uploadDataFieldName パラメーターが空のストリングの場合。2) url.data が ByteArray 型の場合。FileReference.upload() メソッドおよび FileReference.download() メソッドと一緒に使用する場合、url.data は URLVariables 型または String 型のみになります。3) AIR ランタイム(アプリケーションセキュリティサンドボックス内)で、URLRequest のメソッドが GET または POST でない場合(代わりに uploadEncoded() を使用します)。
 
MemoryError — このエラーは、次の理由で発生する可能性があります。1) Flash Player では URLRequest.data パラメーターを UTF8 から MBCS に変換できません。このエラーは、FileReference.upload() に渡された URLRequest オブジェクトが GET 操作を行うように設定されている場合、および System.useCodePagetrue に設定されている場合に発生することがあります。2) Flash Player では POST データにメモリを割り当てることができません。このエラーは、FileReference.upload() に渡された URLRequest オブジェクトが POST 操作を行うように設定されている場合に発生することがあります。

関連する API エレメント

    uploadUnencoded

()メソッド 
public function uploadUnencoded(request:URLRequest):void

ランタイムバージョン: AIR 1.0

ファイルをエンコードせずに URL へのアップロードを開始します。upload() メソッドはファイルを form-data エンベロープでエンコードしますが、uploadUnencoded() メソッドは HTTP 要求の本体でファイルコンテンツをそのまま渡します。送信しようとするデータが、受信するサーバーで理解可能な形式で既にエンコードされている場合、uploadUnencoded() メソッドを使用します。通常、uploadeUnencoded() メソッドを、HTTP/WebDAV PUT メソッドと共に使用します。

パラメーター

request:URLRequest — URLRequest オブジェクトです。URLRequest オブジェクトの url プロパティには、HTTP の POST 呼び出しを使用してアップロードを処理するように設定したサーバースクリプトの URL を設定する必要があります。一部のブラウザーでは、URL ストリングの長さに制限があるものがあります。長さが 256 文字を超える場合、一部のブラウザーまたはサーバーでは失敗する場合があります。このパラメーターが null の場合、例外がスローされます。

この URL では、HTTP または HTTPS(セキュアアップロード)を使用できます。HTTPS を使用するには、url パラメーターで HTTPS url を使用します。url パラメーターにポート番号を指定しない場合、HTTP の場合はポート 80、HTTPS の場合はポート 443 がデフォルトでは使用されます。

POST パラメーターまたは GET パラメーターをサーバーに送信するには、URLRequest オブジェクトの data プロパティに任意のパラメーターを設定し、method プロパティを URLRequestMethod.POST または URLRequestMethod.GET に設定します。


イベント
open:Event — アップロード処理が開始したときに送出されます。
 
progress:ProgressEvent — ファイルのアップロード処理中に定期的に送出されます。
 
complete:Event — ファイルのアップロード処理が正常に完了したときに送出されます。
 
uploadCompleteData:DataEvent — ファイルアップロードの正常終了後、サーバーからデータを受信したときに送出されます。
 
securityError:SecurityErrorEvent — セキュリティ侵害が原因でアップロードが失敗した場合に送出されます。
 
httpStatus:HTTPStatusEvent — HTTP エラーが原因でアップロードが失敗した場合に送出されます。
 
httpResponseStatus:HTTPStatusEvent — アップロード操作が正常に完了すると、サーバーは応答 URL と応答ヘッダーを返します。
 
ioError:IOErrorEvent — 次のいずれかの場合に呼び出されます。
  • Adobe AIR によるファイルの読み込み中、書き込み中、または転送中に入出力エラーが発生したためにアップロードが失敗した場合。
  • ユーザー名とパスワードなど、認証が必要なサーバーにファイルをアップロードしようとしたことが原因でアップロードが失敗した場合。アップロード中、ユーザーがパスワードを入力する方法はありません。
  • url パラメーターに無効なプロトコルが含まれるために、アップロードが失敗した場合。FileReference.upload() は HTTP または HTTPS を使用する必要があります。

例外
SecurityError — 信頼されていないローカル SWF ファイルはインターネットへの接続を許可されません。この問題を回避するには、この SWF ファイルを、ネットワークアクセスを許可されたローカル SWF ファイル、または信頼できる SWF ファイルとして再分類します。この例外がスローされると、アクセスできないローカルファイルの名前および URL を示すメッセージが送信されます。
 
IllegalOperationError — 次の状況でスローされます。1)他の FileReference ブラウズセッション、または FileReferenceList ブラウズセッションが進行中の場合。ファイルブラウズのセッションは、一度に 1 つのみ実行できます。2) URL パラメーターが有効なパスまたはプロトコルでない場合。ファイルのアップロードには HTTP を使用する必要があります。

関連する API エレメント

イベントの詳細

cancel

イベント
イベントオブジェクトの型: flash.events.Event
プロパティ Event.type = flash.events.Event.CANCEL

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0, Flash Player 9

ユーザーがアップロードまたはダウンロードするファイルをファイル参照ダイアログボックスからキャンセルしたときに送出されます。ユーザーが他の手段(ブラウザーを閉じたり、現在のアプリケーションを停止したりすること)によってアップロードまたはダウンロードをキャンセルした場合、Flash Player はこのイベントを送出しません。

Event.CANCEL 定数は、type プロパティ(cancel イベントオブジェクト)の値を定義します。

このイベントには、次のプロパティがあります。

プロパティ
bubblesfalse
cancelablefalse は、キャンセルするデフォルトの動作がないことを示します。
currentTargetイベントリスナーで Event オブジェクトをアクティブに処理しているオブジェクトです。
target操作をキャンセルするオブジェクトへの参照です。

例  ( この例の使用方法 )

次の例では、cancel イベントオブジェクトの使用方法を示します。この例を実行するには、downloadURL.url プロパティを変更して、架空の http://www ではなく実際のドメインとファイルを参照するようにします。[yourDomain].com/SomeFile.pdf. 「ローカルでの再生に関するセキュリティ」を「ネットワークにのみアクセスする」に設定して SWF ファイルをコンパイルする必要がある場合もあります。または Flash Player のセキュリティ設定を更新して、このファイルのネットワークアクセスを許可する必要がある場合があります。
package {
    import flash.display.Sprite;
    import flash.events.*;
    import flash.net.FileReference;
    import flash.net.URLRequest;

    public class FileReference_event_cancel extends Sprite {
        private var downloadURL:URLRequest;
        private var fileName:String = "SomeFile.pdf";
        private var file:FileReference;

        public function FileReference_event_cancel() {
            downloadURL = new URLRequest();
            downloadURL.url = "http://www.[yourDomain].com/SomeFile.pdf";
            file = new FileReference();
            file.addEventListener(Event.CANCEL, cancelHandler);
            file.download(downloadURL, fileName);
        }
        private function cancelHandler(event:Event):void {
            trace("cancelHandler: " + event);
        }
    }
}

complete

イベント  
イベントオブジェクトの型: flash.events.Event
プロパティ Event.type = flash.events.Event.COMPLETE

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0, Flash Player 9

ダウンロードが完了、またはアップロードで HTTP ステータスコード 200 が生成された場合に送出されます。ファイルのダウンロードの場合、Flash Player または Adobe AIR でディスクへのファイル全体のダウンロードが完了すると、このイベントが送出されます。 ファイルのアップロードの場合、転送を受信したサーバーから HTTP ステータスコード 200 を Flash Player または Adobe AIR が受け取った後、このイベントが送出されます。

Event.COMPLETE 定数は、type プロパティ(complete イベントオブジェクト)の値を定義します。

このイベントには、次のプロパティがあります。

プロパティ
bubblesfalse
cancelablefalse は、キャンセルするデフォルトの動作がないことを示します。
currentTargetイベントリスナーで Event オブジェクトをアクティブに処理しているオブジェクトです。
target読み込みが完了したネットワークオブジェクトです。

例  ( この例の使用方法 )

次の例では、complete イベントオブジェクトの使用方法を示します。この例を実行するには、downloadURL.url プロパティを変更して、架空の http://www ではなく実際のドメインとファイルを参照するようにします。[yourDomain].com/SomeFile.pdf. 「ローカルでの再生に関するセキュリティ」を「ネットワークにのみアクセスする」に設定して SWF ファイルをコンパイルする必要がある場合もあります。または Flash Player のセキュリティ設定を更新して、このファイルのネットワークアクセスを許可する必要がある場合があります。
package {
    import flash.display.Sprite;
    import flash.events.*;
    import flash.net.FileReference;
    import flash.net.URLRequest;

    public class FileReference_event_complete extends Sprite {
        private var downloadURL:URLRequest;
        private var fileName:String = "SomeFile.pdf";
        private var file:FileReference;

        public function FileReference_event_complete() {
            downloadURL = new URLRequest();
            downloadURL.url = "http://www.[yourDomain].com/SomeFile.pdf";
            file = new FileReference();
            configureListeners(file);
            file.download(downloadURL, fileName);
        }

        private function configureListeners(dispatcher:IEventDispatcher):void {
            dispatcher.addEventListener(Event.CANCEL, cancelHandler);
            dispatcher.addEventListener(Event.COMPLETE, completeHandler);
            dispatcher.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
            dispatcher.addEventListener(Event.OPEN, openHandler);
            dispatcher.addEventListener(ProgressEvent.PROGRESS, progressHandler);
            dispatcher.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);
            dispatcher.addEventListener(Event.SELECT, selectHandler);
        }

        private function cancelHandler(event:Event):void {
            trace("cancelHandler: " + event);
        }

        private function completeHandler(event:Event):void {
            trace("completeHandler: " + event);
        }

        private function ioErrorHandler(event:IOErrorEvent):void {
            trace("ioErrorHandler: " + event);
        }

        private function openHandler(event:Event):void {
            trace("openHandler: " + event);
        }

        private function progressHandler(event:ProgressEvent):void {
            var file:FileReference = FileReference(event.target);
            trace("progressHandler name=" + file.name + " bytesLoaded=" + event.bytesLoaded + " bytesTotal=" + event.bytesTotal);
        }

        private function securityErrorHandler(event:SecurityErrorEvent):void {
            trace("securityErrorHandler: " + event);
        }

        private function selectHandler(event:Event):void {
            var file:FileReference = FileReference(event.target);
            trace("selectHandler: name=" + file.name + " URL=" + downloadURL.url);
        }
    }
}

関連する API エレメント

    

httpResponseStatus

イベント  
イベントオブジェクトの型: flash.events.HTTPStatusEvent
プロパティ HTTPStatusEvent.type = flash.events.HTTPStatusEvent.HTTP_RESPONSE_STATUS

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0, AIR 1.0

upload() または uploadUnencoded() メソッドを呼び出して HTTP を介してデータにアクセスを試み、Adobe AIR で要求のステータスコードを検出して返すことができる場合に送出されます。

httpStatus イベントと異なり、httpResponseStatus イベントは応答データの前に配信されます。また、httpResponseStatus イベントには responseHeaders プロパティと responseURL プロパティの値が含まれます(これらは httpStatus イベントでは定義されていません)。httpResponseStatus イベントは、発生した場合、complete イベントまたは error イベントの前に、これらのイベントとは別に送信されます。

HTTPStatusEvent.HTTP_RESPONSE_STATUS 定数は、type プロパティ(httpResponseStatus イベントオブジェクト)の値を定義します。

このイベントには、次のプロパティがあります。

プロパティ
bubblesfalse
cancelablefalse は、キャンセルするデフォルトの動作がないことを示します。
currentTargetイベントリスナーで Event オブジェクトをアクティブに処理しているオブジェクトです。
responseURL応答の返送元の URL です。
responseHeaders返された応答ヘッダー(URLRequestHeader オブジェクトの配列)です。
statusサーバーから返された HTTP ステータスコードです。
redirected応答にリダイレクトの結果があるかどうか。
targetHTTP ステータスコードを受け取るネットワークオブジェクトです。

関連する API エレメント

httpStatus

イベント  
イベントオブジェクトの型: flash.events.HTTPStatusEvent
プロパティ HTTPStatusEvent.type = flash.events.HTTPStatusEvent.HTTP_STATUS

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0, Flash Player 9

アップロードに失敗し、HTTP ステータスコードを使用して失敗を記述することができない場合に送出されます。httpStatus イベントが送出された後、ioError イベントが送出されます。

httpStatus イベントは、アップロードが失敗した場合にのみ送出されます。Flash Player で実行されるコンテンツの場合、このイベントはダウンロードの失敗には適用されません。HTTP エラーのためにダウンロードが失敗した場合は、I/O エラーとして通知されます。

HTTPStatusEvent.HTTP_STATUS 定数は、type プロパティ(httpStatus イベントオブジェクト)の値を定義します。

このイベントには、次のプロパティがあります。

プロパティ
bubblesfalse
cancelablefalse は、キャンセルするデフォルトの動作がないことを示します。
currentTargetイベントリスナーで Event オブジェクトをアクティブに処理しているオブジェクトです。
statusサーバーから返された HTTP ステータスコードです。
targetHTTP ステータスコードを受け取るネットワークオブジェクトです。

関連する API エレメント

ioError

イベント  
イベントオブジェクトの型: flash.events.IOErrorEvent
プロパティ IOErrorEvent.type = flash.events.IOErrorEvent.IO_ERROR

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0, Flash Player 9

アップロードまたはダウンロードが失敗したときに送出されます。次のいずれかの理由により、ファイル転送に失敗することがあります。

  • Player でファイルの読み込み中、書き込み中、または転送中に入出力エラーが発生した場合。
  • ユーザー名とパスワードなど、認証が必要なサーバーに SWF ファイルがファイルをアップロードしようとした場合。Flash Player または Adobe AIR には、アップロード時にユーザーがパスワードを入力する手段が用意されていません。認証が必要なサーバーに対して SWF ファイルがファイルをアップロードしようとすると、アップロードは失敗します。
  • スタンドアローンまたは外部 Player 内で、認証が必要なサーバーから SWF ファイルがファイルをダウンロードしようとした場合。ダウンロードする際、スタンドアローンプレーヤーと外部プレーヤーには、ユーザーがパスワードを入力する手段がありません。認証が必要なサーバーから、これらの Player 内の SWF ファイルがファイルをダウンロードしようとすると、ダウンロードは失敗します。ファイルのダウンロードは、ActiveX コントロール Player、ブラウザープラグイン Player、および Adobe AIR ランタイムでのみ成功する可能性があります。
  • url パラメーター(upload() メソッド)に渡された値に、無効なプロトコルが含まれている場合。有効なプロトコルは HTTP と HTTPS です。

重要:ブラウザー内で実行される、つまり、ブラウザープラグインまたは ActiveX コントロールを使用するアプリケーションと、Adobe AIR で実行されるコンテンツでのみ、認証用のユーザー名とパスワードを入力できるダイアログボックスを表示できます。ただし、それはダウンロードの場合のみです。 Flash Player のプラグインまたは ActiveX コントロールバージョンを使用するアップロードの場合、または、スタンドアローンまたは外部 Player を使用するアップロードまたはダウンロードの場合、ファイル転送は失敗します。

type プロパティ(ioError イベントオブジェクト)の値を定義します。

このイベントには、次のプロパティがあります。

プロパティ
bubblesfalse
cancelablefalse は、キャンセルするデフォルトの動作がないことを示します。
currentTargetイベントリスナーで Event オブジェクトをアクティブに処理しているオブジェクトです。
errorID特定のエラーに関連付けられた参照番号です(AIR のみ)。
target入出力エラーが発生したネットワークオブジェクトです。
textエラーメッセージとして表示されるテキストです。

関連する API エレメント

open

イベント  
イベントオブジェクトの型: flash.events.Event
プロパティ Event.type = flash.events.Event.OPEN

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0, Flash Player 9

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

Event.OPEN 定数は、type プロパティ(open イベントオブジェクト)の値を定義します。

このイベントには、次のプロパティがあります。

プロパティ
bubblesfalse
cancelablefalse は、キャンセルするデフォルトの動作がないことを示します。
currentTargetイベントリスナーで Event オブジェクトをアクティブに処理しているオブジェクトです。
target接続をオープンしたネットワークオブジェクトです。

例  ( この例の使用方法 )

次の例で、download イベントオブジェクトの使用方法を示します。この例を実行するには、downloadURL.url プロパティを変更して、架空の http://www ではなく実際のドメインとファイルを参照するようにします。[yourDomain].com/SomeFile.pdf. 「ローカルでの再生に関するセキュリティ」を「ネットワークにのみアクセスする」に設定して SWF ファイルをコンパイルする必要がある場合もあります。または Flash Player のセキュリティ設定を更新して、このファイルのネットワークアクセスを許可する必要がある場合があります。
package {
    import flash.display.Sprite;
    import flash.events.*;
    import flash.net.FileReference;
    import flash.net.URLRequest;
    import flash.net.FileFilter;

    public class FileReference_download extends Sprite {
        private var downloadURL:URLRequest;
        private var fileName:String = "SomeFile.pdf";
        private var file:FileReference;

        public function FileReference_download() {
            downloadURL = new URLRequest();
            downloadURL.url = "http://www.[yourDomain].com/SomeFile.pdf";
            file = new FileReference();
            configureListeners(file);
            file.download(downloadURL, fileName);
        }

        private function configureListeners(dispatcher:IEventDispatcher):void {
            dispatcher.addEventListener(Event.CANCEL, cancelHandler);
            dispatcher.addEventListener(Event.COMPLETE, completeHandler);
            dispatcher.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
            dispatcher.addEventListener(Event.OPEN, openHandler);
            dispatcher.addEventListener(ProgressEvent.PROGRESS, progressHandler);
            dispatcher.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);
            dispatcher.addEventListener(Event.SELECT, selectHandler);
        }

        private function cancelHandler(event:Event):void {
            trace("cancelHandler: " + event);
        }

        private function completeHandler(event:Event):void {
            trace("completeHandler: " + event);
        }

        private function ioErrorHandler(event:IOErrorEvent):void {
            trace("ioErrorHandler: " + event);
        }

        private function openHandler(event:Event):void {
            trace("openHandler: " + event);
        }

        private function progressHandler(event:ProgressEvent):void {
            var file:FileReference = FileReference(event.target);
            trace("progressHandler name=" + file.name + " bytesLoaded=" + event.bytesLoaded + " bytesTotal=" + event.bytesTotal);
        }

        private function securityErrorHandler(event:SecurityErrorEvent):void {
            trace("securityErrorHandler: " + event);
        }

        private function selectHandler(event:Event):void {
            var file:FileReference = FileReference(event.target);
            trace("selectHandler: name=" + file.name + " URL=" + downloadURL.url);
        }
    }
}

関連する API エレメント

    

permissionStatus

イベント  
イベントオブジェクトの型: flash.events.PermissionEvent
プロパティ PermissionEvent.type = flash.events.PermissionEvent.PERMISSION_STATUS

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 24.0

ファイルシステムにアクセスする権限をアプリケーションから要求したときに送出されます。status プロパティの値を確認すると、権限が付与されたか拒否されたかを判定できます。

関連する API エレメント

progress

イベント  
イベントオブジェクトの型: flash.events.ProgressEvent
プロパティ ProgressEvent.type = flash.events.ProgressEvent.PROGRESS

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0, Flash Player 9

ファイルのアップロード処理中またはダウンロード処理中に定期的に送出されます。progress イベントは、Flash Player がバイトをサーバーに転送しているときに送出され、最終的に転送が成功しなくても、転送の実行中は定期的に送出されます。ファイルの転送が実際に成功して完了したかどうか、およびそのタイミングを確認するには、complete イベントを受け取ります。

場合によっては、progress イベントは受信されません。例えば、転送対象ファイルが非常に小さい場合や、アップロードやダウンロードが非常に短時間に終わる場合、progress イベントは送出されない場合があります。

ファイルのアップロードの進捗状況は、OS X 10.3 より前の Macintosh プラットフォームでは確認できません。progress イベントは、アップロード処理中に呼び出されますが、progress イベントの bytesLoaded プロパティの値は、進捗状況を確認できないことを示す -1 です。

type プロパティ(progress イベントオブジェクト)の値を定義します。

このイベントには、次のプロパティがあります。

プロパティ
bubblesfalse
bytesLoadedリスナーがイベントを処理しているときに読み込まれたアイテム数またはバイト数です。
bytesTotal読み込みプロセスが成功した場合に最終的に読み込まれるアイテムまたはバイトの総数です。
cancelablefalse は、キャンセルするデフォルトの動作がないことを示します。
currentTargetイベントリスナーで Event オブジェクトをアクティブに処理しているオブジェクトです。
target進行状況をレポートする オブジェクトです。

例  ( この例の使用方法 )

次の例では、progress イベントオブジェクトの使用方法を示します。この例を実行するには、downloadURL.url プロパティを変更して、架空の http://www ではなく実際のドメインとファイルを参照するようにします。[yourDomain].com/SomeFile.pdf. 「ローカルでの再生に関するセキュリティ」を「ネットワークにのみアクセスする」に設定して SWF ファイルをコンパイルする必要がある場合もあります。または Flash Player のセキュリティ設定を更新して、このファイルのネットワークアクセスを許可する必要がある場合があります。
package {
    import flash.display.Sprite;
    import flash.events.*;
    import flash.net.FileReference;
    import flash.net.URLRequest;

    public class FileReference_event_progress extends Sprite {
        private var downloadURL:URLRequest;
        private var fileName:String = "SomeFile.pdf";
        private var file:FileReference;

        public function FileReference_event_progress() {
            downloadURL = new URLRequest();
            downloadURL.url = "http://www.[yourDomain].com/SomeFile.pdf";
            file = new FileReference();
            file.addEventListener(ProgressEvent.PROGRESS, progressHandler);
            file.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
            file.addEventListener(Event.COMPLETE, completeHandler);
            file.download(downloadURL, fileName);
        }

        private function progressHandler(event:ProgressEvent):void {
            var file:FileReference = FileReference(event.target);
            trace("progressHandler: name=" + file.name + " bytesLoaded=" + event.bytesLoaded + " bytesTotal=" + event.bytesTotal);
        }
        
        private function ioErrorHandler(event:IOErrorEvent):void {
            trace("ioErrorHandler: " + event);
        }
        
        private function completeHandler(event:Event):void {
            trace("completeHandler: " + event);
        }
    }
}

関連する API エレメント

securityError

イベント  
イベントオブジェクトの型: flash.events.SecurityErrorEvent
プロパティ SecurityErrorEvent.type = flash.events.SecurityErrorEvent.SECURITY_ERROR

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0, Flash Player 9

FileReference.upload() または FileReference.download() メソッドの呼び出しによって、サーバーにファイルをアップロードするか、呼び出し元のセキュリティサンドボックスの外部にあるサーバーからファイルを取得しようとすると、送出されます。発生した特有のエラーを示す text プロパティの値は、通常 "securitySandboxError" です。呼び出し側の SWF ファイルが自分のドメインの外にある SWF ファイルにアクセスしようとして、アクセス権限がないと発生します。URL ポリシーファイルを使用することで、このエラーに対処できます。

Adobe AIR では、これらのセキュリティ制限は、アプリケーションセキュリティサンドボックス内のコンテンツには適用されません。

Adobe AIR では、これらのセキュリティ制限は、アプリケーションセキュリティサンドボックス内のコンテンツには適用されません。

SecurityErrorEvent.SECURITY_ERROR 定数は、type プロパティ(securityError イベントオブジェクト)の値を定義します。

このイベントには、次のプロパティがあります。

プロパティ
bubblesfalse
cancelablefalse は、キャンセルするデフォルトの動作がないことを示します。
currentTargetイベントリスナーで Event オブジェクトをアクティブに処理しているオブジェクトです。
targetセキュリティエラーを報告するネットワークオブジェクトです。
textエラーメッセージとして表示されるテキストです。

関連する API エレメント

select

イベント  
イベントオブジェクトの型: flash.events.Event
プロパティ Event.type = flash.events.Event.SELECT

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0, Flash Player 9

ユーザーがアップロードするファイルまたはダウンロードするファイルをファイル参照ダイアログボックスから選択したときに、送出されます。(このダイアログボックスは、FileReference.browse() メソッド、FileReferenceList.browse() メソッド、または FileReference.download() メソッドを呼び出したときに開かれます。)ユーザーがファイルを選択し、「OK」などをクリックして操作を確認すると、FileReference オブジェクトのプロパティに値が設定されます。

Flash Player または Adobe AIR ランタイムのアプリケーションセキュリティサンドボックス外で実行されるコンテンツの場合、select イベントは、どのメソッドがそのイベントを呼び出したかにより、わずかに異なった動作をします。select イベントが browse() 呼び出しの後に送出された場合、Flash Player または AIR アプリケーションは、FileReference オブジェクトのすべてのプロパティを読み取ることができます。これは、ユーザーが選択したファイルが、ローカルファイルシステムに存在するためです。 select イベントが download() 呼び出しの後に発生した場合、Flash Player または AIR アプリケーションは、name プロパティのみを読み取ることができます。これは、select イベントが送出された時点では、ファイルがまだローカルファイルシステムにダウンロードされていないためです。ファイルがダウンロードされ、complete イベントが送出された時点で、Flash Player または AIR アプリケーションは FileReference オブジェクトの他のすべてのプロパティを読み取ることができます。

Event.SELECT 定数は、type プロパティ(select イベントオブジェクト)の値を定義します。

このイベントには、次のプロパティがあります。

プロパティ
bubblesfalse
cancelablefalse は、キャンセルするデフォルトの動作がないことを示します。
currentTargetイベントリスナーで Event オブジェクトをアクティブに処理しているオブジェクトです。
targetアイテムが選択されたオブジェクトです。

例  ( この例の使用方法 )

次の例では、select イベントオブジェクトの使用方法を示します。この例を実行するには、uploadURL.url プロパティを変更して、架空の http://www ではなく実際のドメインとファイルを参照するようにします。[yourDomain].com/SomeFile.pdf. 「ローカルでの再生に関するセキュリティ」を「ネットワークにのみアクセスする」に設定して SWF ファイルをコンパイルする必要がある場合もあります。または Flash Player のセキュリティ設定を更新して、このファイルのネットワークアクセスを許可する必要がある場合があります。この例をデスクトップから実行するには、サーバー側にも crossdomain.xml ファイルを置いておく必要があります。ioErrorHandler() 関数がトリガーされた場合には、問題の uploadURL を更新して、アップロードを受信するよう設定された有効な URL に 変更する必要があるかもしれません。
 
package {
    import flash.display.Sprite;
    import flash.events.*;
    import flash.net.FileReference;
    import flash.net.URLRequest;

    public class FileReference_event_select extends Sprite {
        private var uploadURL:URLRequest;
        private var file:FileReference;

        public function FileReference_event_select() {
            uploadURL = new URLRequest();
            uploadURL.url = "http://www.[yourDomain].com/yourUploadHandlerScript.cfm";
            file = new FileReference();
            file.addEventListener(Event.SELECT, selectHandler);
            file.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
            file.addEventListener(ProgressEvent.PROGRESS, progressHandler);
            file.addEventListener(Event.COMPLETE, completeHandler);
            file.browse();
        }

        private function selectHandler(event:Event):void {
            var file:FileReference = FileReference(event.target);
            trace("selectHandler: name=" + file.name + " URL=" + uploadURL.url);
            file.upload(uploadURL);
        }

        private function ioErrorHandler(event:IOErrorEvent):void {
            trace("ioErrorHandler: " + event);
        }

        private function progressHandler(event:ProgressEvent):void {
            var file:FileReference = FileReference(event.target);
            trace("progressHandler: name=" + file.name + " bytesLoaded=" + event.bytesLoaded + " bytesTotal=" + event.bytesTotal);
        }

        private function completeHandler(event:Event):void {
            trace("completeHandler: " + event);
        }
    }
}

uploadCompleteData

イベント  
イベントオブジェクトの型: flash.events.DataEvent
プロパティ DataEvent.type = flash.events.DataEvent.UPLOAD_COMPLETE_DATA

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0, Flash Player 9.0.28.0

アップロードの正常終了後、サーバーからデータを受信したときに送出されます。サーバーからデータが返されないと、このイベントは送出されません。

type プロパティ(uploadCompleteData イベントオブジェクト)の値を定義します。

このイベントには、次のプロパティがあります。

プロパティ
bubblesfalse
cancelablefalse は、キャンセルするデフォルトの動作がないことを示します。
currentTargetイベントリスナーで Event オブジェクトをアクティブに処理しているオブジェクトです。
dataファイルアップロードが正常に終了した後、サーバーから返された生データです。
targetアップロードが正常に終了した後、データを受信する FileReference オブジェクトです。
FileReferenceExample.as

次の例では、実行時にロードされるファイルのデータフォーマットとステータス情報を表示します。

注意:この例を実行するには、uploadURL.url プロパティを変更して、例の架空の URL ではなく実際の URL を参照するようにします。この URL は、指定した URL のルート Web ディレクトリ内の yourUploadHandlerScript.cfm という名前のファイルを参照している必要があります。設定に基づいて、「ローカルでの再生に関するセキュリティ」を「ネットワークにのみアクセスする」に設定して SWF ファイルをコンパイルする必要がある場合もあります。または Flash Player のセキュリティ設定を更新して、このファイルのネットワークアクセスを許可する必要がある場合もあります。

package {
    import flash.display.Sprite;
    import flash.events.*;
    import flash.net.FileFilter;
    import flash.net.FileReference;
    import flash.net.URLRequest;

    public class FileReferenceExample extends Sprite {
        private var uploadURL:URLRequest;
        private var file:FileReference;

        public function FileReferenceExample() {
            uploadURL = new URLRequest();
            uploadURL.url = "http://www.[yourDomain].com/yourUploadHandlerScript.cfm";
            file = new FileReference();
            configureListeners(file);
            file.browse(getTypes());
        }

        private function configureListeners(dispatcher:IEventDispatcher):void {
            dispatcher.addEventListener(Event.CANCEL, cancelHandler);
            dispatcher.addEventListener(Event.COMPLETE, completeHandler);
            dispatcher.addEventListener(HTTPStatusEvent.HTTP_STATUS, httpStatusHandler);
            dispatcher.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
            dispatcher.addEventListener(Event.OPEN, openHandler);
            dispatcher.addEventListener(ProgressEvent.PROGRESS, progressHandler);
            dispatcher.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);
            dispatcher.addEventListener(Event.SELECT, selectHandler);
            dispatcher.addEventListener(DataEvent.UPLOAD_COMPLETE_DATA,uploadCompleteDataHandler);
        }

        private function getTypes():Array {
            var allTypes:Array = new Array(getImageTypeFilter(), getTextTypeFilter());
            return allTypes;
        }

        private function getImageTypeFilter():FileFilter {
            return new FileFilter("Images (*.jpg, *.jpeg, *.gif, *.png)", "*.jpg;*.jpeg;*.gif;*.png");
        }

        private function getTextTypeFilter():FileFilter {
            return new FileFilter("Text Files (*.txt, *.rtf)", "*.txt;*.rtf");
        }

        private function cancelHandler(event:Event):void {
            trace("cancelHandler: " + event);
        }

        private function completeHandler(event:Event):void {
            trace("completeHandler: " + event);
        }

        private function uploadCompleteDataHandler(event:DataEvent):void {
            trace("uploadCompleteData: " + event);
        }

        private function httpStatusHandler(event:HTTPStatusEvent):void {
            trace("httpStatusHandler: " + event);
        }
        
        private function ioErrorHandler(event:IOErrorEvent):void {
            trace("ioErrorHandler: " + event);
        }

        private function openHandler(event:Event):void {
            trace("openHandler: " + event);
        }

        private function progressHandler(event:ProgressEvent):void {
            var file:FileReference = FileReference(event.target);
            trace("progressHandler name=" + file.name + " bytesLoaded=" + event.bytesLoaded + " bytesTotal=" + event.bytesTotal);
        }

        private function securityErrorHandler(event:SecurityErrorEvent):void {
            trace("securityErrorHandler: " + event);
        }

        private function selectHandler(event:Event):void {
            var file:FileReference = FileReference(event.target);
            trace("selectHandler: name=" + file.name + " URL=" + uploadURL.url);
            file.upload(uploadURL);
        }
    }
}




[ X ]英語で表示される理由
ActionScript 3.0 リファレンスガイドのコンテンツが英語で表示されます。

ActionScript 3.0 リファレンスガイドのすべての部分がすべての言語に翻訳されているわけではありません。言語エレメントが翻訳されていない場合、そのエレメントは英語で表示されます。例えば、ga.controls.HelpBox クラスはどの言語にも訳されていません。このため、リファレンスガイドの日本語バージョンでは、ga.controls.HelpBox クラスは英語で表示されます。