`
arlxy
  • 浏览: 39088 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

[ActionScript]将String转化为Object

    博客分类:
  • FLEX
阅读更多

        在本项目的进行中,有人问了我个很有意思的问题,就是如何将一个String 转化为 Object(如果是动态语言就很方便了,这里是ActionScript)。

 

首先让我们来看一下他是在什么情况下遇到这个问题的,他想将一个CSV类型的文件,通过FileStream读入,然后经过程序解析后,放入ArrayCollection中,这个ArrayCollection是与 一个DataGrid的dataProvider绑定的。

 

首先,他不清楚要读入CSV文件有多少列,所以需要在程序中 去动态添加 DataGrid 的Columns.

如:

 var tagColumn:DataGridColumn=new DataGridColumn();
                                 tagColumn.headerText=fieldName[j];
                                 tagColumn.dataField=fieldName[j];
                                 params.columns.concat(tagColumn);

 

他将从CSV中的一行解析成如下这种个格式:

    var str:String={name:"Kevin",sex:"male",nationality:"china"}

 

而当执行 ArrayCollection.addItem(str) 的时候是错误的

如果执行 ArrayCollection.addItem({name:"Kevin",sex:"male",nationality:"china"}) 的时候是正确的

 

很明显 ArrayCollection.addItem()方法允许你增加对象,这个时候你则需要将 str 转化为 Object.

 

 var convertStr:String=str.slice(1,str.length-1); 

 var items:Array=convertStr.split(",");

 var obj:Object=new Object();

 for(var i:String in items){

         var pros:Array=i.split(":");

          obj[pros[0]]=pros[1].slice(1,pros[1].length-1);

 

  }

 

很简洁,现在就可以 ArrayCollection.addItem(obj) 了。

 

2
0
分享到:
评论
2 楼 robinlovoy 2011-03-12  
var convertStr:String=str.slice(1,str.length-1);
var items:Array=convertStr.split(",");
var obj:Object=new Object();
for each(var i:String in items){
         var pros:Array=i.split(":");
          obj[pros[0]]=pros[1].slice(1,pros[1].length-1);
  
  }
1 楼 robinlovoy 2011-03-12  
这是个很实用的思路,一直以为可以直接转换的

相关推荐

    ActionScript 3 类型转换

    类型转换,或者说“cast”,是ActionScript中的一个关键概念,它指的是将一种数据类型转换为另一种数据类型的过程。这在处理不同数据格式时极为重要,尤其是在需要统一数据类型或确保变量与预期类型匹配的场景下。 ...

    Actionscript中文帮助文档

    ActionScript是一种基于ECMAScript规范的编程语言,主要用于开发Adobe Flash平台上的交互式内容,如网页游戏、动画和应用程序。这个“Actionscript中文帮助文档...同时,配合实际项目练习,将理论知识转化为实践技能。

    ActionScript 3.0语法参考手册

    用于将表达式转换为指定的类型。 **示例代码:** ```actionscript var num:Object = 10; var str:Number = num as Number; trace(str); // 输出 10 ``` #### 五、赋值运算符 `=` 用于将一个值赋给变量。 **示例...

    ActionScript2.0字典(CHM)

    1. **基本语法**:了解ActionScript 2.0的基础,如变量声明、数据类型(Number、String、Boolean、Object等)、流程控制(条件语句、循环结构)以及函数定义。 2. **对象和类**:ActionScript 2.0支持面向对象编程...

    Adobe提供的Flex解析Json的ActionScript包

    这个类提供了一些静态方法,如`decode()`用于将JSON字符串转换为ActionScript对象,`encode()`则将ActionScript对象转换为JSON字符串。这种方法简单易用,但不支持所有的JSON语法特性,比如函数和日期对象。 2. **...

    ActionScript开发技术大全

    第5章ActionScript3.0中的String对象 104 5.1创建String对象 104 5.2字符串处理 105 5.2.1字符处理 105 5.2.2字符串比较 107 5.2.3裁割与连接 108 5.2.4查找、匹配与替换 110 5.2.5提取子串 112 5.2.6大小写转换 113...

    聊天室(ActionScript 3.0实现)

    3. **发送消息**:当用户点击发送按钮,将输入框内容转换为JSON字符串,并通过Socket的writeUTFBytes()方法发送。 ```actionscript function sendMessage(event:Event):void { var message:Object = {type: ...

    ActionScript3.0 中文版

    4. 数据类型:AS3.0支持基本数据类型(如int、uint、Number、Boolean、String等),以及复杂类型如Array、Object和XML。强类型系统确保了代码的稳定性和可预测性。 5. 异常处理:通过try、catch和finally语句,...

    ActionScript3类型与java数据类型对应表.rar

    在AS3中,可以使用Number、int或uint函数将其他类型转换为数字类型;而在Java中,可以使用转型运算符(如(int)或(Double))来转换类型。 8. 类型检查: - AS3提供了is和as操作符来检查和转换类型,而Java通常通过...

    Flash ActionScript 2.0 语言参考(pdf格式)

    2. **变量和数据类型**:在AS2.0中,变量必须先声明后使用,支持基本数据类型如Number、String、Boolean、Object等。理解这些类型及其用法是编程的基础。 3. **函数和方法**:函数是一段可重复使用的代码块,而方法...

    ActionScript开发技术大全.PDF

    "ActionScript开发技术大全"这本书可能还包含了实际案例、示例代码和练习,以帮助读者将理论知识转化为实践技能。无论你是初学者还是有经验的开发者,这部PDF都将提供宝贵的参考和学习资料,帮助你精通ActionScript...

    ActionScript 3.0 完全自学手册(随书光盘)-- 源文件

    ActionScript 3.0 是Adobe Flash Platform中的编程语言,它为创建交互式、动画和富互联网应用程序(RIA)提供了强大的工具。本完全自学手册旨在帮助初学者和中级开发者深入理解和掌握ActionScript 3.0的核心概念和...

    java 与 flex 数据转换

    - Java 中的 `String`、`Boolean`(转换为字符串形式)和 `Character`(单个字符)也可以映射回 ActionScript 的 `String`。 5. **Date**: - ActionScript 的 `Date` 类型转换为 Java 的 `java.util.Date`。 - ...

    flex序列化json

    FlexJSON库提供了一组API,使得Flex能够将ActionScript对象转换为JSON字符串,反之也可以将JSON字符串解析成ActionScript对象。这在Flex与Java或其他支持JSON的后端系统进行数据交互时非常有用。 1. **序列化**: ...

    ActionScript字符串操作[参照].pdf

    - 使用`parseInt`函数尝试将字符串转换为整数。 - 使用`isNaN`函数检查转换后的结果是否为非数字。 - 如果字符串可以被成功转换为一个整数,则返回`true`;否则返回`false`。 ##### 4.2 是否为Double型数据(is...

    flash alchemy api 翻译

    - **1.3.1 AS3_Malloced_Str AS3_StringValue(AS3_Val obj)**: 将ActionScript String转换为C风格字符串,需调用`free`释放。 - **1.3.2 int AS3_IntValue(AS3_Val obj)**: 将ActionScript整型转换为C整型。 - **...

    ActionScript_3.0_精彩范例词典.doc

    5. 数学函数:`isFinite()`、`isNaN()`、`parseFloat()`、`parseInt()`以及`Array()`、`Boolean()`、`Number()`、`String()`和`Object()`等类型转换函数。 类对象部分介绍了如何使用类来组织和扩展代码,如`Class`...

Global site tag (gtag.js) - Google Analytics