加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

flex_从文件加载数据;

发布时间:2020-12-15 05:01:23 所属栏目:百科 来源:网络整理
导读:结果输出: =File_Data:I Love You,Baby!我好想好想你哦! =File Was successfully Loaded; =Loaded(33) of (33) bytes; =Loaded(0) of (33) bytes; =FileReferenceLoadExample package com.learn.mix { ?? ?import flash.events.Event; ?? ?import flash.ev

结果输出:

=>File_Data:I Love You,Baby!我好想好想你哦!
=>File Was successfully Loaded;
=>Loaded(33) of (33) bytes;
=>Loaded(0) of (33) bytes;


=>FileReferenceLoadExample

package com.learn.mix
{
?? ?import flash.events.Event;
?? ?import flash.events.IOErrorEvent;
?? ?import flash.events.ProgressEvent;
?? ?import flash.events.SecurityErrorEvent;
?? ?import flash.net.FileFilter;
?? ?import flash.net.FileReference;
?? ?import flash.utils.ByteArray;
?? ?
?? ?import mx.core.UIComponent;
?? ?
?? ?/**
?? ? * 从文件加载数据类
?? ? * @author cen
?? ? */?? ?
?? ?public class FileReferenceLoadExample extends UIComponent
?? ?{
?? ??? ?
?? ??? ?/**
?? ??? ? * 属性*/
?? ??? ?/*文件对象*/
?? ??? ?private var fileRef:FileReference;
?? ??? ?
?? ??? ?/**
?? ??? ? * constructor
?? ??? ? */?? ??? ?
?? ??? ?public function FileReferenceLoadExample()
?? ??? ?{
?? ??? ??? ?/**
?? ??? ??? ? * 初始化文件对象*/
?? ??? ??? ?fileRef = new FileReference();
?? ??? ??? ?fileRef.addEventListener(Event.SELECT,onFileSelectedHandler);
?? ??? ??? ?fileRef.addEventListener(Event.CANCEL,onCancelHandler);
?? ??? ??? ?fileRef.addEventListener(IOErrorEvent.IO_ERROR,onIOErrorHandler);
?? ??? ??? ?fileRef.addEventListener(SecurityErrorEvent.SECURITY_ERROR,onSecurityErrorHandler);
?? ??? ??? ?
?? ??? ??? ?/*允许文件类型*/
?? ??? ??? ?var textTypeFilter:FileFilter = new FileFilter("TextFiles(*.txt,*.rtf)","*.txt;*.rtf");
?? ??? ??? ?
?? ??? ??? ?/*选择文件*/
?? ??? ??? ?fileRef.browse([textTypeFilter]);
?? ??? ?}
?? ??? ?
?? ??? ?
?? ??? ?/**
?? ??? ? * 选择文件
?? ??? ? * @param event
?? ??? ? */?? ??? ?
?? ??? ?private function onFileSelectedHandler(event:Event):void {
?? ??? ??? ?fileRef.addEventListener(ProgressEvent.PROGRESS,onProgressHandler);
?? ??? ??? ?fileRef.addEventListener(Event.COMPLETE,onCompleteHandler);
?? ??? ??? ?
?? ??? ??? ?/*加载数据*/
?? ??? ??? ?fileRef.load();
?? ??? ?}
?? ??? ?
?? ??? ?/**
?? ??? ? * 加载进度
?? ??? ? * @param event
?? ??? ? *
?? ??? ? */?? ??? ?
?? ??? ?private function onProgressHandler(event:ProgressEvent):void
?? ??? ?{
?? ??? ??? ?trace("=>Loaded(" + event.bytesLoaded + ") of (" + event.bytesTotal + ") bytes;");
?? ??? ?}
?? ??? ?
?? ??? ?/**
?? ??? ? * 文件加载完成
?? ??? ? * @param event
?? ??? ? *
?? ??? ? */?? ??? ?
?? ??? ?private function onCompleteHandler(event:Event):void
?? ??? ?{
?? ??? ??? ?trace("=>File Was successfully Loaded;");
?? ??? ??? ?
?? ??? ??? ?var data:ByteArray = fileRef.data;
?? ??? ??? ?data.position = 0;
?? ??? ??? ?
? ? ? ? ? ?// var result:String = data.readUTFBytes(data.length);//如果外部txt文件有中文,会出现乱码;故使用下面方法转换;
?? ??? ??? ?

? ? ? ? ? ?var result:String = data.readMultiByte(data.length,"gb2312");
?? ??? ??? ?trace("=>File_Data:"+result);
?? ??? ?}
?? ??? ?
?? ??? ?/**
?? ??? ? * 取消事件
?? ??? ? * @param event
?? ??? ? *
?? ??? ? */?? ??? ?
?? ??? ?private function onCancelHandler(event:Event):void
?? ??? ?{
?? ??? ??? ?trace("=>The Browse request was canceled by the user;");
?? ??? ?}
?? ??? ?
?? ??? ?/**
?? ??? ? * 输入/输出错误
?? ??? ? * @param event
?? ??? ? *
?? ??? ? */?? ??? ?
?? ??? ?private function onIOErrorHandler(event:IOErrorEvent):void
?? ??? ?{
?? ??? ??? ?trace("=>There was an IO Error;");
?? ??? ?}
?? ??? ?
?? ??? ?/**
?? ??? ? * 安全错误
?? ??? ? * @param event
?? ??? ? *
?? ??? ? */?? ??? ?
?? ??? ?private function onSecurityErrorHandler(event:SecurityErrorEvent):void
?? ??? ?{
?? ??? ??? ?trace("=>There was a security error;");
?? ??? ?}
?? ?}
}


=>app.mxml

<?xml version="1.0" encoding="utf-8"?> <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" ?? ??? ??? ??? xmlns:s="library://ns.adobe.com/flex/spark" ?? ??? ??? ??? xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600" ?? ??? ??? ??? pageTitle="TheStudioOfCenyebao" creationComplete="creationCompleteHandler(event)"> ?? ?<fx:Script> ?? ??? ?<![CDATA[ ?? ??? ??? ?import com.learn.mix.FileReferenceLoadExample; ?? ??? ??? ? ?? ??? ??? ?import mx.events.FlexEvent; ?? ??? ??? ? ?? ??? ??? ?private var fileRef:FileReferenceLoadExample; ?? ??? ??? ? ?? ??? ??? ?protected function creationCompleteHandler(event:FlexEvent):void ?? ??? ??? ?{ ?? ??? ??? ??? ? ?? ??? ??? ?} ?? ??? ??? ? ?? ??? ??? ?protected function btn_clickHandler(event:MouseEvent):void ?? ??? ??? ?{ ?? ??? ??? ??? ?fileRef = new FileReferenceLoadExample(); ?? ??? ??? ??? ?addElement(fileRef); ?? ??? ??? ?} ?? ??? ??? ? ?? ??? ?]]> ?? ?</fx:Script> ?? ? ?? ?<s:VGroup width="450" height="230" verticalCenter="0" horizontalCenter="0" horizontalAlign="center" verticalAlign="middle"> ?? ??? ?<s:Button label="加载数据" click="btn_clickHandler(event)"/> ?? ?</s:VGroup> </s:Application>

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读