2011-10-13 20 views
0

我需要知道如何读取flex3中的.xlsx文件内容。有没有人遇到这个问题,请给出一些想法来完成这项任务。如果有任何好的API请让我知道。如何读取flex3中的.xlsx文件内容

我尝试使用下面的示例代码读取.xlsx文件,但它不工作,但其工作正常.xls文件。

// on creation complete 
private function onCreate(e:Event):void 
{ 
var request:URLRequest = new URLRequest("C://test.xlsx"); 
var urlLoader:URLLoader = new URLLoader(request); 
urlLoader.addEventListener(Event.COMPLETE, onURLLoaderComplete); 
urlLoader.dataFormat = URLLoaderDataFormat.BINARY; 
urlLoader.load(request); 
} 

// on file load complete 
private function onURLLoaderComplete(event:Event):void 
{ 
     loadedFile = event.target.data; 
    var excelFile:ExcelFile = new ExcelFile(); 
    excelFile.loadFromByteArray(loadedFile); 
    sheet = excelFile.sheets[0]; 
    Alert.show(sheet.getCell(1,0).value) 
    DataGrid.dataProvider=sheet.values; 
} 

在此先感谢。

回答

0

如果您只需要单元值,请将其另存为CSV - 解析起来非常简单(不像xlsx)。

+0

感谢您的回复。我需要读取所有3种Excel类型的格式,例如CSV,xls和xlsx。我可以读取CSV和xls文件的值,但我不能在xlsx中。如果有任何关于xlsx文件格式的想法对我更有用。 – raj

+0

从Adobe没有默认的解析器(当然)。在这个页面上,你会发现来自MS的xlsx规范:http://msdn.microsoft.com/en-us/library/dd922181%28v=office.12%29.aspx尽管如此,从来没有听说过AS3中的现成解析器。 – alxx