Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/flash/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
您能否查看FLA文件的ActionScript,该文件保存在比您的Flash程序更新的版本中?_Flash_Actionscript_Flash Cs5_Flash Cs3 - Fatal编程技术网

您能否查看FLA文件的ActionScript,该文件保存在比您的Flash程序更新的版本中?

您能否查看FLA文件的ActionScript,该文件保存在比您的Flash程序更新的版本中?,flash,actionscript,flash-cs5,flash-cs3,Flash,Actionscript,Flash Cs5,Flash Cs3,我有一个旧版本的Flash(确切地说是Flash AS3 CS3) 我正在上一堂ActionScript编码的大学课。然而,我们学校使用的版本,以及我们教科书的源文件,都保存在AS3 CS5或更高版本中。我试着不让它影响我,但我发现在家里完成作业很困难 当需要时,我是否可以查看CS5或更高版本中保存的FLA文件中的Actionscript 我只有Flash CS3 如果有,那么这将很好地解决我的问题 >编辑 由于我可能不太清楚,我想问是否有办法查看保存在CS5或更高版本中的.FLA文件的Acti

我有一个旧版本的Flash(确切地说是Flash AS3 CS3)

我正在上一堂ActionScript编码的大学课。然而,我们学校使用的版本,以及我们教科书的源文件,都保存在AS3 CS5或更高版本中。我试着不让它影响我,但我发现在家里完成作业很困难

当需要时,我是否可以查看CS5或更高版本中保存的FLA文件中的Actionscript 我只有Flash CS3

如果有,那么这将很好地解决我的问题

>编辑

由于我可能不太清楚,我想问是否有办法查看保存在CS5或更高版本中的.FLA文件的ActionScript(我的计算机上只有CS3)。这里的假设是,我将不再能够使用CS5访问计算机


请注意,我并不特别关心打开整个文件——我想要的只是嵌入在时间轴中的ActionScript。

快速浏览一下,flash CS5似乎无法以CS3格式保存;它能达到的最低值是CS4

但是,fla中的大部分代码可能会被删除并保存在单独的.as文件中,然后在新的CS3 fla中运行,您可以在家中重新创建。这完全取决于fla的内容,我正在对这些fla的内容做一些假设。但如果它只是时间线上的代码,可能有一些简单的movieclip符号,那么它可能是一种可能性


编辑以响应问题中的编辑 据我所知,只有flash可以打开fla文件,但我最近发现了这一点,但从未使用过它。不过,它可能对您有一些用处:我已经读到/注意到,您可以将flash CS5 fla重命名为zip文件,它将打开/解压缩。只需将扩展名从.fla更改为.zip,然后将其解压缩

里面的东西你可以到处挖掘。您可能最感兴趣的文件是“DOMDocument.xml”。看着它,它似乎描述了佛罗里达州的构成……包括画面上的任何动作脚本

例如,我制作了一个空fla,在第1、2和4帧中添加了一些代码,如下所示:

在第1帧上:

trace("This is frame 1, line 1");
trace("This is frame 1, line 2");
在第2帧上:

trace("This is frame 2, line 1");
trace("This is frame 2, line 2");
在第4帧上(跳过第3帧):

只是一些跟踪语句。按照我刚才所说的,在xml中,在时间线->层->框架->动作脚本->脚本标记中,我可以看到我的脚本:

<timelines>
          <DOMTimeline name="Scene 1" currentFrame="3">
               <layers>
                    <DOMLayer name="Layer 1" color="#4FFF4F" current="true" isSelected="true">
                         <frames>
                              <DOMFrame index="0" keyMode="9728">
                                   <Actionscript>
                                        <script><![CDATA[trace("This is frame 1, line 1");
trace("This is frame 1, line 2");]]></script>
                                   </Actionscript>
                                   <elements/>
                              </DOMFrame>
                              <DOMFrame index="1" keyMode="9728">
                                   <Actionscript>
                                        <script><![CDATA[trace("This is frame 2, line 1");
trace("This is frame 2, line 2");]]></script>
                                   </Actionscript>
                                   <elements/>
                              </DOMFrame>
                              <DOMFrame index="2" keyMode="9728">
                                   <elements/>
                              </DOMFrame>
                              <DOMFrame index="3" keyMode="9728">
                                   <Actionscript>
                                        <script><![CDATA[trace("This is frame 4, line 1");
trace("This is frame 4, line 2");
trace("This is frame 5, line 3");]]></script>
                                   </Actionscript>
                                   <elements/>
                              </DOMFrame>
                         </frames>
                    </DOMLayer>
               </layers>
          </DOMTimeline>
     </timelines>

帧索引似乎从0开始,脚本本身被包装在CDATA标记中

我还做了一个fla测试,我的库中有一个简单的movieclip项目。这将生成一个xml文件,在提取时描述库目录中的该项。不过,在提取时,我确实收到了一个“此zip文件已损坏”错误…但它似乎仍然可以很好地提取


按照我说的,你可能需要做一些工作来拼凑一个更复杂的fla文件,但希望这是一个开始?

谢谢你的回答。。。然而,我不会问我是否可以在闲暇时简单地这样做:因为我没有访问CS5程序的权限,所以我不能简单地将ActionScript从.FLA剪切并粘贴到可读的.AS文件中。。。我在问是否有一种方法可以让我不使用flash就获得代码…它成功了!我提取了DOMDocument,在Safari中打开了它,所有的ActionScript都在那里!非常感谢!
<timelines>
          <DOMTimeline name="Scene 1" currentFrame="3">
               <layers>
                    <DOMLayer name="Layer 1" color="#4FFF4F" current="true" isSelected="true">
                         <frames>
                              <DOMFrame index="0" keyMode="9728">
                                   <Actionscript>
                                        <script><![CDATA[trace("This is frame 1, line 1");
trace("This is frame 1, line 2");]]></script>
                                   </Actionscript>
                                   <elements/>
                              </DOMFrame>
                              <DOMFrame index="1" keyMode="9728">
                                   <Actionscript>
                                        <script><![CDATA[trace("This is frame 2, line 1");
trace("This is frame 2, line 2");]]></script>
                                   </Actionscript>
                                   <elements/>
                              </DOMFrame>
                              <DOMFrame index="2" keyMode="9728">
                                   <elements/>
                              </DOMFrame>
                              <DOMFrame index="3" keyMode="9728">
                                   <Actionscript>
                                        <script><![CDATA[trace("This is frame 4, line 1");
trace("This is frame 4, line 2");
trace("This is frame 5, line 3");]]></script>
                                   </Actionscript>
                                   <elements/>
                              </DOMFrame>
                         </frames>
                    </DOMLayer>
               </layers>
          </DOMTimeline>
     </timelines>