套件 | mx.core |
類別 | public class ByteArrayAsset |
繼承 | ByteArrayAsset ByteArray Object |
實作 | IFlexAsset |
語言版本: | ActionScript 3.0 |
產品版本: | Flex 3 |
執行階段版本: | Flash Player 9, AIR 1.1 |
The byte data that you are embedding can be in any kind of file, and the entire file is always embedded. You cannot embed the bytes of a particular asset that is in a SWF file, although you can embed an entire SWF file.
The MXML compiler autogenerates a class that extends ByteArrayAsset to represent the embedded data.
To embed an arbitrary file, you declare a variable of type Class,
and put [Embed]
metadata on it, using the MIME type
application/octet-stream
.
For example, you embed a text file like this:
[Bindable] [Embed(source="Story.txt", mimeType="application/octet-stream")] private var storyClass:Class;
The compiler autogenerates a subclass of the ByteArrayAsset class
and sets your variable to be a reference to this autogenerated class.
You can then use this class reference to create instances of the
ByteArrayAsset using the new
operator, and you can extract
information from the byte array using methods of the ByteArray class:
var storyByteArray:ByteArrayAsset = ByteArrayAsset(new storyClass()); var story:String = storyByteArray.readUTFBytes(storyByteArray.length);
You must specify that the MIME type for the embedding is
application/octet-stream
, which causes the byte data
to be embedded "as is", with no interpretation.
It also causes the autogenerated class to extend ByteArrayAsset
rather than another asset class.
For example, if you embed a PNG file without specifying this
MIME type, the PNG data will be automatically transcoded
into the bitmap format used by the player, and a subclass
of BitmapAsset will be autogenerated to represent it.
But if you specify the MIME type as application/octet-stream
,
then no transcoding will occur, the PNG data will be embedded
as is, and the autogenerated class will extend ByteArrayAsset.
方法 | 定義自 | ||
---|---|---|---|
Constructor. | ByteArrayAsset | ||
在單一不可分割的作業中,請比較這個位元組陣列中的整數值與其他整數值,如果相符,請將那些位元組替換為其他值。 | ByteArray | ||
在單一不可分割的作業中,請比較這個位元組陣列的長度與提供的值,如果相符,請變更這個位元組陣列的長度。 | ByteArray | ||
清除位元組陣列的內容,然後將 length 與 position 屬性重設為 0。 | ByteArray | ||
壓縮位元組陣列。 | ByteArray | ||
使用 deflate 壓縮演算法來壓縮位元組陣列。 | ByteArray | ||
指出物件是否有已定義的指定屬性。 | Object | ||
使用 deflate 壓縮演算法來解壓縮位元組陣列。 | ByteArray | ||
指出 Object 類別的實體是否位於指定為參數的物件原型鏈中。 | Object | ||
指出指定的屬性是否存在,以及是否可列舉。 | Object | ||
會從位元組串流讀取 Boolean 值。 | ByteArray | ||
會從位元組串流讀取具有正負號的位元組。 | ByteArray | ||
會從位元組串流讀取資料位元組的數目 (由 length 參數指定)。 | ByteArray | ||
會從位元組串流讀取 IEEE 754 雙精度 (64 位元) 浮點數。 | ByteArray | ||
會從位元組串流讀取 IEEE 754 單精度 (32 位元) 浮點數。 | ByteArray | ||
會從位元組串流讀取具有正負號的 32 位元整數。 | ByteArray | ||
會使用指定的字元集,從位元組串流讀取指定之長度的多位元組字串。 | ByteArray | ||
readObject():*
會從位元組陣列讀取物件,並以 AMF 序列化格式編碼。 | ByteArray | ||
會從位元組串流讀取具有正負號的 16 位元整數。 | ByteArray | ||
會從位元組串流讀取無正負號的位元組。 | ByteArray | ||
會從位元組串流讀取無正負號的 32 位元整數。 | ByteArray | ||
會從位元組串流讀取無正負號的 16 位元整數。 | ByteArray | ||
會從位元組串流讀取 UTF-8 字串。 | ByteArray | ||
會從位元組串流讀取由 length 參數指定的 UTF-8 位元組序列,並傳回字串。 | ByteArray | ||
為迴圈作業設定動態屬性的可用性。 | Object | ||
提供可覆寫的方法,用於自訂 ByteArray 物件中值的 JSON 編碼。 | ByteArray | ||
傳回代表此物件的字串,根據地區特定慣例進行格式化。 | Object | ||
會將位元組陣列轉換為字串。 | ByteArray | ||
會解壓縮位元組陣列。 | ByteArray | ||
會傳回指定之物件的基本值。 | Object | ||
會寫入 Boolean 值。 | ByteArray | ||
會將位元組寫入位元組串流。 | ByteArray | ||
會從指定的位元組陣列 bytes,將 length 個位元組的序列,從 offset (從零開始的索引) 個位元組之後開始寫入至位元組串流。 | ByteArray | ||
會將 IEEE 754 雙精度 (64 位元) 浮點數寫入位元組串流。 | ByteArray | ||
會將 IEEE 754 單精度 (32 位元) 浮點數寫入位元組串流。 | ByteArray | ||
會將具有正負號的 32 位元整數寫入位元組串流。 | ByteArray | ||
會使用指定的字元集,將多位元組字串寫入位元組串流。 | ByteArray | ||
會使用 AMF 序列化格式,將物件寫入位元組陣列。 | ByteArray | ||
會將 16 位元整數寫入位元組串流。 | ByteArray | ||
會將無正負號的 32 位元整數寫入位元組串流。 | ByteArray | ||
會將 UTF-8 字串寫入位元組串流。 | ByteArray | ||
會將 UTF-8 字串寫入位元組串流。 | ByteArray |
ByteArrayAsset | () | 建構函式 |
public function ByteArrayAsset()
語言版本: | ActionScript 3.0 |
產品版本: | Flex 3 |
執行階段版本: | Flash Player 9, AIR 1.1 |
Constructor.
Tue Jun 12 2018, 03:47 PM Z