<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://wbex.ru/index.php?action=history&amp;feed=atom&amp;title=Flash_%2F_Flex_%2F_ActionScript%2FDevelopment%2FByteArray</id>
		<title>Flash / Flex / ActionScript/Development/ByteArray - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://wbex.ru/index.php?action=history&amp;feed=atom&amp;title=Flash_%2F_Flex_%2F_ActionScript%2FDevelopment%2FByteArray"/>
		<link rel="alternate" type="text/html" href="http://wbex.ru/index.php?title=Flash_/_Flex_/_ActionScript/Development/ByteArray&amp;action=history"/>
		<updated>2026-04-04T21:52:21Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://wbex.ru/index.php?title=Flash_/_Flex_/_ActionScript/Development/ByteArray&amp;diff=4552&amp;oldid=prev</id>
		<title> в 09:19, 26 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://wbex.ru/index.php?title=Flash_/_Flex_/_ActionScript/Development/ByteArray&amp;diff=4552&amp;oldid=prev"/>
				<updated>2010-05-26T09:19:13Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Версия 09:19, 26 мая 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align: center;&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
			</entry>

	<entry>
		<id>http://wbex.ru/index.php?title=Flash_/_Flex_/_ActionScript/Development/ByteArray&amp;diff=4553&amp;oldid=prev</id>
		<title>Admin: 1 версия</title>
		<link rel="alternate" type="text/html" href="http://wbex.ru/index.php?title=Flash_/_Flex_/_ActionScript/Development/ByteArray&amp;diff=4553&amp;oldid=prev"/>
				<updated>2010-05-26T08:15:00Z</updated>
		
		<summary type="html">&lt;p&gt;1 версия&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==By default, private properties are not written when an object is serialized==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
package {&lt;br /&gt;
    import flash.display.Sprite;&lt;br /&gt;
    import flash.net.*;&lt;br /&gt;
    import flash.utils.ByteArray;&lt;br /&gt;
    public class CustomTypeExample extends Sprite {&lt;br /&gt;
        public function CustomTypeExample() {&lt;br /&gt;
            registerClassAlias(&amp;quot;ExampleType&amp;quot;, ExampleType);&lt;br /&gt;
            var example1:ExampleType = new ExampleType(1, 2);&lt;br /&gt;
            var byteArray:ByteArray = new ByteArray();&lt;br /&gt;
            byteArray.writeObject(example1);&lt;br /&gt;
            byteArray.position = 0;&lt;br /&gt;
            var example2:ExampleType = byteArray.readObject() as ExampleType;&lt;br /&gt;
            trace(example2.getA());&lt;br /&gt;
            trace(example2.getB());&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
    class ExampleType implements flash.utils.IExternalizable {&lt;br /&gt;
        private var _a:Number;&lt;br /&gt;
        private var _b:Number;&lt;br /&gt;
        public function ExampleType(a:Number = -1, b:Number = -1) {&lt;br /&gt;
            if(a != -1) {&lt;br /&gt;
                _a = a;&lt;br /&gt;
            }&lt;br /&gt;
            if(b != -1) {&lt;br /&gt;
                _b = b;&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
        public function getA():Number {&lt;br /&gt;
            return _a;&lt;br /&gt;
        }&lt;br /&gt;
        public function getB():Number {&lt;br /&gt;
            return _b;&lt;br /&gt;
        }&lt;br /&gt;
        public function writeExternal(output:flash.utils.IDataOutput):void {&lt;br /&gt;
            output.writeFloat(_a);&lt;br /&gt;
            output.writeFloat(_b);&lt;br /&gt;
        }&lt;br /&gt;
        public function readExternal(input:flash.utils.IDataInput):void {&lt;br /&gt;
            _a = input.readFloat();&lt;br /&gt;
            _b = input.readFloat();&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
        &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Common Uses of Byte Arrays==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
package {&lt;br /&gt;
    import flash.display.Sprite;&lt;br /&gt;
    import flash.utils.ByteArray;&lt;br /&gt;
    import flash.media.Sound;&lt;br /&gt;
    import flash.media.SoundChannel;&lt;br /&gt;
    import flash.media.*;&lt;br /&gt;
    import flash.net.URLRequest;&lt;br /&gt;
    import flash.events.Event;&lt;br /&gt;
    import flash.system.Security;&lt;br /&gt;
    public class Main extends Sprite {&lt;br /&gt;
        private var _channel:SoundChannel;&lt;br /&gt;
        private var _graph:Sprite;&lt;br /&gt;
        public function Main() {&lt;br /&gt;
        Security.loadPolicyFile(&amp;quot;http://wbex.ru/crossdomain.xml&amp;quot;);&lt;br /&gt;
            var sound:Sound = new Sound();&lt;br /&gt;
            sound.load(new URLRequest(&amp;quot;http://wbex.ru/Demo.mp3&amp;quot;), new SoundLoaderContext(1000, true));&lt;br /&gt;
            _channel = sound.play();&lt;br /&gt;
            _graph = new Sprite();&lt;br /&gt;
            _graph.y = 200;&lt;br /&gt;
            addChild(_graph);&lt;br /&gt;
            addEventListener(Event.ENTER_FRAME, enterFrameHandler);&lt;br /&gt;
        }&lt;br /&gt;
        private function enterFrameHandler(event:Event):void {&lt;br /&gt;
            var bytes:ByteArray = new ByteArray();&lt;br /&gt;
            SoundMixer.ruputeSpectrum(bytes);&lt;br /&gt;
            _graph.graphics.clear();&lt;br /&gt;
            _graph.graphics.lineStyle(0, 0, 1);&lt;br /&gt;
            var plotX:Number = 0;&lt;br /&gt;
            for(var i:Number = 0; i &amp;lt; 256; i++) {&lt;br /&gt;
                _graph.graphics.lineTo(plotX, bytes.readFloat() * stage.stageHeight / 2);&lt;br /&gt;
                plotX += stage.stageWidth / 256;&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
        &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Creating a Byte Array==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
package{&lt;br /&gt;
  import flash.display.Sprite;&lt;br /&gt;
  import flash.utils.ByteArray;  &lt;br /&gt;
  public class Main extends Sprite{&lt;br /&gt;
    public function Main(){&lt;br /&gt;
        var bytes:ByteArray = new ByteArray();&lt;br /&gt;
        bytes[0] = 256;&lt;br /&gt;
        trace(bytes[0]); // Outputs 0&lt;br /&gt;
        &lt;br /&gt;
        bytes.writeInt(1);&lt;br /&gt;
        trace(bytes[0] + &amp;quot;&amp;quot;+ bytes[1] + &amp;quot;&amp;quot;+ bytes[2] + &amp;quot;&amp;quot;+ bytes[3]);&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
        &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Embedding Files as Binary Data==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
package {&lt;br /&gt;
  import mx.core.ByteArrayAsset;&lt;br /&gt;
  [Embed(source=&amp;quot;f.swf&amp;quot;, mimeType=&amp;quot;application/octet-stream&amp;quot;)]&lt;br /&gt;
  public class FP9BinaryData extends ByteArrayAsset {&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
        &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Embedding XML at compile time==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
package {&lt;br /&gt;
  import flash.display.*;&lt;br /&gt;
  import flash.events.*;&lt;br /&gt;
  import flash.utils.ByteArray;&lt;br /&gt;
  public class EmbedXML extends Sprite {&lt;br /&gt;
    [Embed(source=&amp;quot;embeds/data.xml&amp;quot;, mimeType=&amp;quot;application/octet-stream&amp;quot;)]&lt;br /&gt;
    private var BinaryData:Class;&lt;br /&gt;
    public function EmbedXML (  ) {&lt;br /&gt;
      var byteArray:ByteArray = new BinaryData(  );&lt;br /&gt;
      var data:XML = new XML(byteArray.readUTFBytes(byteArray.length));&lt;br /&gt;
      trace(data.toXMLString(  ));&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
        &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Write array to ByteArray==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
package{&lt;br /&gt;
  import flash.display.Sprite;&lt;br /&gt;
  import flash.utils.ByteArray;&lt;br /&gt;
  public class Main extends Sprite{&lt;br /&gt;
    public function Main(){&lt;br /&gt;
        var arrayA:Array = new Array(&amp;quot;a&amp;quot;, &amp;quot;b&amp;quot;, &amp;quot;c&amp;quot;, &amp;quot;d&amp;quot;);&lt;br /&gt;
        var byteArray:ByteArray = new ByteArray();&lt;br /&gt;
        byteArray.writeObject(arrayA);&lt;br /&gt;
        byteArray.position = 0;&lt;br /&gt;
        var arrayB:Array = byteArray.readObject() as Array;&lt;br /&gt;
        arrayB.push(&amp;quot;e&amp;quot;, &amp;quot;f&amp;quot;, &amp;quot;g&amp;quot;, &amp;quot;h&amp;quot;);&lt;br /&gt;
        trace(arrayA.length); // Outputs 4&lt;br /&gt;
        trace(arrayB.length); // Outputs 8&lt;br /&gt;
&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
        &amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>