2011-10-13 61 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