`
lan13217
  • 浏览: 495797 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

AS3根据编码类型解析文本

 
阅读更多
package {

 import flash.text.TextField;

 import flash.utils.ByteArray;

 import flash.events.MouseEvent;

 import flash.events.Event;

 import flash.net.FileReference;

 import flash.display.MovieClip;

 
 public class Test extends MovieClip {

  private var ref : FileReference;

  private var btn_browse : MovieClip;

  private var textField : TextField;

 

  public function Test() {

   ref = new FileReference();

   ref.addEventListener(Event.SELECT, file_select);

   ref.addEventListener(Event.COMPLETE, file_complete);

  

   btn_browse = this["_btn_browse"] as MovieClip;

   btn_browse.buttonMode = true;

   btn_browse.addEventListener(MouseEvent.CLICK, btn_browse_click);

  

   textField = this["_text"] as TextField;

  }

 

  private function btn_browse_click(event : MouseEvent) : void {

   ref.browse();

  }

 

  private function file_select(event : Event) : void {

   ref.load();

  }

 

  private function file_complete(event : Event) : void {

   //解析字节数组

   var data : ByteArray = ref.data;

   var type : String = getFileType(data);

   var length : uint = data.length;

   var result : String = "";

   switch(type) {

    case "ANSI" :

     data.position = 0;

     result = data.readMultiByte(length-data.position, "gb2312");

     break;

    case "Unicode" :

    case "Unicode big endian" :

    case "UTF-8" :

     result=data.toString();

     break;

   }

   textField.text = type + "nn" + result;

   textField.scrollV=1;

  }

 

  //根据文件头信息判断文本文件编码类型;

  private function getFileType(fileData : ByteArray) : String {

   var b0 : int = fileData.readUnsignedByte();

   var b1 : int = fileData.readUnsignedByte();

   var fileType : String = "ANSI";

   if(b0 == 0xFF && b1 == 0xFE) {

    fileType = "Unicode";

   }else if(b0 == 0xFE && b1 == 0xFF) {

    fileType = "Unicode big endian";

   }else if(b0 == 0xEF && b1 == 0xBB) {

    fileType = "UTF-8";

   }

   return fileType;

  }

 }

}

http://www.codesky.net/article/201203/177590.html
分享到:
评论

相关推荐

    as3corelib-.92.11.rar_as 3 corelib_as3_as3corelib_as3corelib API

    5. JSON解析:AS3CoreLib提供了`JSON`类,可以方便地将AS3对象转换为JSON字符串,以及将JSON字符串解析回AS3对象。这使得AS3与JavaScript或其他支持JSON格式的语言之间的数据交换变得更加简单。 6. 字符串处理:AS3...

    AS3汉字转拼音(转)

    这篇博客"AS3汉字转拼音(转)"探讨的是如何在ActionScript 3(AS3)环境中实现这一功能。ActionScript是Adobe Flash平台的主要编程语言,广泛用于创建交互式内容和应用程序。 首先,我们要理解AS3中的字符串处理。...

    SAS EG导入UTF-8编码的文本数据文件时的乱码问题解决方法

    SAS EG是一个图形用户界面的程序,它提供了数据管理、统计分析、报告创建等功能,但它在处理不同编码的文本文件时可能会遇到编码兼容性问题。 解决SAS EG导入UTF-8编码文本数据文件的乱码问题,通常需要在导入文件...

    AS3 二维码生成及解码工具

    AS3(ActionScript 3)是一种广泛用于创建富互联网应用程序(RIA)的编程语言,尤其在Adobe Flash平台中。在给定的“AS3 二维码生成及解码工具”中,我们聚焦的是如何使用AS3来实现二维码的生成与解码功能。二维码,...

    Python文本模式匹配与TXT文件编码类型的识别.zip

    通过熟练掌握Python中的正则表达式和文件编码识别,开发者能够有效地处理和分析文本数据,无论它们的格式多么复杂。这在数据清洗、日志分析、爬虫项目等多个场景下都极其有用。同时,理解这些基础工具的原理和用法,...

    最经常遇到的AS3面试题

    number、int和uint是AS3中的三种基本数字类型,number类型可以表示实数,int类型可以表示整数,uint类型可以表示无符号整数。 14. 数组中可以放不同的类型吗? 数组可以存储不同类型的数据,例如数字、字符串、...

    as3 二维码Demo和源码

    通过分析这个文件,开发者可以了解如何集成ZXing到AS3项目中,包括初始化解码器、捕获和解析图像、生成二维码图像等步骤。这将涵盖以下知识点: 1. AS3基础语法:包括类、对象、函数、事件监听等。 2. 位图处理:...

    文本文件解析

    在编程中,我们经常需要对各种类型的文本文件进行操作,如日志文件、配置文件、CSV(逗号分隔值)文件、JSON或XML格式的数据文件等。本文将深入探讨文本文件解析的基本原理、常见方法以及相关的编程实践。 首先,...

    flash as3 加载外部mp3

    ### Flash AS3 加载外部MP3知识点解析 #### 核心概念 在Adobe Flash Professional(现已更名为Adobe Animate)中,ActionScript 3 (AS3) 提供了强大的功能来处理音频、视频等内容。本篇内容主要聚焦于如何在Flash...

    Tensorflow 文本编码器

    文本编码器是 TensorFlow 中的一个关键组件,它能够将自然语言文本转化为可被机器理解的形式,以便进行各种任务如文本分类、情感分析、机器翻译和句向量计算等。在这个特定的场景中,这个文本编码器支持16种不同的...

    汉字转拼音(AS3.0)

    通过解析汉字拼音库,处理多音字,并利用AS3的数组和其他数据结构,可以有效地将中文文本转化为拼音形式,从而在多种应用场景中发挥作用。虽然具体的实现细节需要查看“array.as”源代码才能了解,但我们可以推测这...

    Python 查看文件的编码格式方法

    根据上述输出,我们可以知道该文件的编码格式是`GB2312`,并且识别的信心度非常高(0.99),语言类型为`Chinese`。 #### 四、总结 通过使用`chardet`库,我们可以轻松地检测出文件的编码格式,这对于处理含有非...

    as3.0学习手册

    - **文本编辑器**: 对于轻量级开发,可以使用如 Sublime Text、Atom 或 Visual Studio Code 等文本编辑器配合必要的插件来编写 AS3 代码。 #### 四、AS3.0 示例代码分析 - **基本语法**: 包括变量声明、条件语句、...

    换成编码器

    从给定的VB6.0代码片段来看,这段程序似乎是一个文本编码和解码的工具,主要通过不同的条件判断和字符转换实现对输入文本的处理。下面将详细解析这段代码中的关键知识点,包括其功能、逻辑流程以及所涉及的VB6.0编程...

    张志晨之flash AS3 实用代码://过滤文字输入:

    在Adobe Flash Professional与ActionScript 3.0(简称AS3)开发环境中,文本输入控制是实现用户交互的关键环节之一。通过对TextField对象的`restrict`属性进行设置,可以有效地限制用户在特定文本框内输入的内容类型...

    asf文件结构查看.rar

    ASF可以包含视频、音频、文本甚至图像等多种类型的流,而WMV则通常指代在ASF中编码的视频流。因此,当提到ASF文件时,我们往往也关注其中的WMV视频流。 3. **ASF文件查看工具**: 压缩包中的“WMV ASF文件结构查看...

    as3corelib-.93

    1. **编码与解码**: 库中包含了多种编码和解码算法,如Base64编码和解码,用于在AS3中处理二进制数据和文本之间的转换。这对于在网络上传输二进制数据或者在JSON格式中包含二进制数据时特别有用。 2. **图像处理**:...

    ActionScript3中的JSON编码解码包

    在ActionScript3(AS3)中,JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,它允许开发者以文本形式存储和传输数据。JSON因其简单、易读、易解析的特性,在网络通信中被广泛使用。这个...

    Python判断文件和字符串编码类型的实例

    - **chardet**:这是一个非常强大的第三方库,能够自动检测文本的编码类型,支持多种编码格式。虽然它通常表现良好,但在某些情况下可能会出现误判。 #### 四、自定义编码检测方法 在文章提供的代码示例中,作者...

    Python 转换文本编码实现解析

    基本上都是用with open(filename, encoding =’UTF-8′) as f:来打开csv文本,但是实际使用过程中发现有些csv文本并不是utf-8格式,从而导致程序在run的过程中报错,每次都需要手动去把该文本文件的编码格式修改成...

Global site tag (gtag.js) - Google Analytics