AirExcel -用于导出 Excel 2007 文件的 Flex AIR 组件 初版发布
版权声明:Copyright © 广氏波罗猫 Noname Cat, KwongChow, Canton. [http://stephencat.cnblogs.com/]
版本日期:2010年10月30日
功能:
- 每个工作薄 (Workbook) 可以添加无限数量的试算表 (Sheet)
- 试算表不限行数,列数从 A 到 ZZ 共 702 列
- 单元格内容支持文本、数值
- 可以写入文件 (flash.filesystem.File 对象),写入完毕会分派 Event.COMPLETE 事件
限制:
- 仅限 AIR 桌面程序使用
- 暂只能把数据按行写入文件,未能从文件读取数据
- 日期会被处理为文本(类似 1997-09-30 14:07:00)
- 其他对象会被处理为字符串 [object]
- XML节点会被处理为空字符串,因此处理前请做强制类型转换
用法示例:
A. Flex AIR 界面组件:
<s:Button x="83" y="53" label="按钮" id="btnOK" click="btnOK_clickHandler(event)"/>
<s:Label x="83" y="110" width="371" height="25" id="lblMessage"/>
B. Flex 脚本:
import mx.formatters.DateFormatter;
import nonamecat.excel.ExcelWorkbook;
protected function btnOK_clickHandler(event:MouseEvent):void
{
var excel:ExcelWorkbook = new ExcelWorkbook();
excel.addEventListener(Event.COMPLETE, onCompleteHandler);
var sheet:XML = excel.createSheet("你好");
var sheet2:XML = excel.createSheet("World");
var sheet3:XML = excel.createSheet("Sheet3");
var o:Object = new Object();
o.a = "Hello";
o.b = 1;
o.c = 3.3;
o.d = new Date();
excel.appendRow(sheet, o.a, o.a, o.b, o.c, o.d);
excel.appendRow(sheet, "abc","111222", 220.99, "Hello");
excel.appendRow(sheet2, "abcdefg", "111222", "220.99", "xxdef", "xxHello");
excel.appendRow(sheet3, o.a, o.a, o.b, o.c, o.d);
var file:File = new File("D:\\abc.xlsx");
excel.write(file);
}
private function onCompleteHandler(event:Event):void
{
var df:DateFormatter = new DateFormatter();
df.formatString = "YYYY年MM月DD日 HH点NN分SS秒";
this.lblMessage.text = "创建 Excel 文件完毕 - "+ df.format(new Date());
}
下载: