no commit message

This commit is contained in:
niandeng
2020-09-17 18:40:01 +08:00
parent 4382915d09
commit d957abceaa
283 changed files with 86935 additions and 63 deletions
+82
View File
@@ -0,0 +1,82 @@
package ckaction.act {
import flash.events.Event;
import flash.events.IOErrorEvent;
import flash.net.URLLoader;
import flash.net.URLRequest;
import ckaction.act.XML2JSON;
import flash.events.ErrorEvent;
import ckaction.C.C;
import flash.net.URLVariables;
public class loadXml {
private var f: Function; //加载成功或失败都返回该函数
private var l: URLLoader = null;
public function loadXml(m: String, c: Function, met: String = "get"): void {
if(!m){
trace("没有文件路径");
c(null);
return;
}
f = c;
var r: URLRequest = new URLRequest(m);
//var params: URLVariables = new URLVariables();
//params["path"]=C.PATH["path"]+C.PATH["file"];
//r.data=params;
//r.method = met;
l = new URLLoader();
l.addEventListener(Event.COMPLETE, com);
l.addEventListener(IOErrorEvent.IO_ERROR, err);
l.load(r);
}
private function remove(): void {
l.removeEventListener(Event.COMPLETE, com);
l.removeEventListener(IOErrorEvent.IO_ERROR, err);
}
private function com(event: Event): void {
var str: String = event.currentTarget.data.toString();
if (str.indexOf("<?xml version=") > -1 || str.indexOf("</") > -1) {
var xml: XML = new XML(event.currentTarget.data);
if (xml) {
try {
analysis(xml);
} catch (event: Error) {
f(null);
}
} else {
f(null);
}
} else if (str.indexOf("{") == 0 || str.indexOf("[") == 0) {
try {
var json: Object = JSON.parse(event.currentTarget.data);
if (json != null) {
f(json);
} else {
f(null);
}
} catch (event: Error) {
new log(event);
trace(event);
f(null);
}
} else {
f(str);
}
remove();
}
private function analysis(xml: XML): void {
var obj: Object = XML2JSON.parse(xml);
try {
f(obj);
} catch (event: Error) {
f(null);
}
}
private function err(event: IOErrorEvent) {
f(null);
remove();
}
}
}