11RIA 闪客社区 - 最赞 Animate Flash 论坛

搜索
查看: 5339|回复: 14
上一主题 下一主题

[Loader 加载] 网络通讯小练习(加载xml文件)

[复制链接] TA的其它主题
发表于 2019-1-23 15:24:05 | 显示全部楼层 |阅读模式

【游客模式】——注册会员,加入11RIA 闪客社区吧!一起见证Flash的再次辉煌……

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
本帖最后由 雪原xy 于 2019-1-23 15:28 编辑

[Actionscript3] 纯文本查看 复制代码
//网络通讯小练习;
package {
//导入六个类,三个net包中和网络相关的类;
//一个Sprite用来继承;
//一个Event用来响应事件;
//还有一个TextField用来显示文本;
import flash.display.Sprite;
import flash.events.Event;
import flash.text.TextField;
import flash.net.URLRequest;
import flash.net.URLLoader;
import flash.net.URLLoaderDataFormat;
public class net_sample extends Sprite{
//定义一个私有属性,动态文本框;
private var tt_txt:TextField;
//构造函数中做五件事;
public function net_sample():void{
//1、创建一个Request对象和URLLoader对象;
//由于安全沙箱问题,只能访问要本地文件"E:/classn.xml";
var urlString:String="E:/classn.xml";
var req:URLRequest=new URLRequest(urlString);
var urlLoader:URLLoader=new URLLoader();
//2、设置dataFormat格式;
urlLoader.dataFormat=URLLoaderDataFormat.TEXT;
//3、为loader对象添加侦听器;
urlLoader.addEventListener(Event.COMPLETE,netFun);
//4、用try...catch语句来测试网络;
try{
trace("正在加载网络……");
urlLoader.load(req);
}
catch(e:Error){
trace("不能加载网络:"+e);
}
//5、把文本框加载到舞台;
tt_txt=new TextField();
tt_txt.autoSize="left";
addChild(tt_txt);
}
//编写侦听器;
private function netFun(ev:Event):void{
trace(ev.target.data is String);
trace(ev.target.data);
tt_txt.text=ev.target.data;
}
}
}



下面是我的xml文件:
[Actionscript3] 纯文本查看 复制代码
<cla nam="一班">
<stu num="001">
<namex>韩寒</namex>
<sex>女</sex>
<pol>中共党员</pol>
<ach>
<chi>85</chi>
<math>90</math>
<eng>95</eng>
</ach>
</stu>
<stu num="002">
<namex>李克</namex>
<sex>男</sex>
<pol>中共党员</pol>
<ach>
<chi>80</chi>
<math>95</math>
<eng>75</eng>
</ach>
</stu>
<stu num="003">
<namex>张国</namex>
<sex>男</sex>
<pol>民主党</pol>
<ach>
<chi>75</chi>
<math>90</math>
<eng>70</eng>
</ach>
</stu>
</cla>

 楼主| 发表于 2019-1-23 15:26:32 | 显示全部楼层
本来想访问我们的网站的,老是有沙箱问题,于是访问了本地磁盘的文件;
不知道怎么回事,加载的文件不能全部显示出来,汉字都是乱码;
回复

使用道具 举报

发表于 2019-1-23 16:25:00 | 显示全部楼层
雪原xy 发表于 2019-1-23 15:26
本来想访问我们的网站的,老是有沙箱问题,于是访问了本地磁盘的文件;
不知道怎么回事,加载的文件不能全部 ...

1. 加载沙箱问题,是因为flash发布设置,里面有一个网络和本地的选择,一般来说加载网络就选择网络,加载本地就选择本地。


2. 乱码问题是因为你的XML格式不全,一般开头有一个默认的文字:
<?xml version="1.0" encoding="UTF-8"?>

还有乱码有时候可以用一句代码解决:

[Actionscript3] 纯文本查看 复制代码
// 使用操作系统的传统代码页来解释外部文本文件,避免非Unicode格式不能正常显示,Unicode格式为通用格式
System.useCodePage = true;

回复

使用道具 举报

 楼主| 发表于 2019-1-23 21:14:40 | 显示全部楼层
本帖最后由 雪原xy 于 2019-1-23 21:18 编辑
TKCB 发表于 2019-1-23 16:25
1. 加载沙箱问题,是因为flash发布设置,里面有一个网络和本地的选择,一般来说加载网络就选择网络,加载 ...

非常感谢,刚刚按照你的方法果然成功了!!
几句话,解决了困扰我几天的问题!

真心感谢!
有一点要补充的是保存xml文件的时候要注意编码为UTF-8

回复

使用道具 举报

发表于 2019-3-18 10:43:37 | 显示全部楼层
以后跟着雪原一起学习
回复

使用道具 举报

 楼主| 发表于 2019-3-19 06:23:11 | 显示全部楼层
qiuhao 发表于 2019-3-18 10:43
以后跟着雪原一起学习

你好,共同学习!
回复

使用道具 举报

发表于 2019-4-2 20:54:41 | 显示全部楼层
学习!感谢分享。
回复

使用道具 举报

 楼主| 发表于 2019-4-3 06:17:00 | 显示全部楼层
莫小沫 发表于 2019-4-2 20:54
学习!感谢分享。

你好,共同学习!
回复

使用道具 举报

发表于 2019-4-3 19:22:38 | 显示全部楼层
向大神学习!
回复

使用道具 举报

 楼主| 发表于 2019-4-3 20:10:32 | 显示全部楼层

不敢当!!!我是菜鸟!!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条

感谢所有支持论坛的朋友:下面展示最新的5位赞助和充值的朋友……更多赞助和充值朋友的信息,请查看:永远的感谢名单

SGlW(66139)、 anghuo(841)、 whdsyes(255)、 longxia(60904)、 囫囵吞澡(58054)

下面展示总排行榜的前3名(T1-T3)和今年排行榜的前3名的朋友(C1-C3)……更多信息,请查看:总排行榜今年排行榜

T1. fhqu1462(969)、 T2. lwlpluto(14232)、 T3. 1367926921(962)  |  C1. anghuo(147)、 C2. fdisker(27945)、 C3. 囫囵吞澡(58054)



快速回复 返回顶部 返回列表