在将CSV导入并将行分割成数组之前,我需要从末尾删除一些冗余的'\n'(否则会得到额外的空行)。
public function parseCSV(data:String):Array {
//something to strip linebreaks, \n and \r from end of array
var lines : Array = data.split ( /\R/ );
var preamble : Array = lines.splice(0,trashLength);
var keyArray : Array = lines.splice ( 0, 1 )[0].split ( "," );
var assocArray : Array = [];
for each (var line:String in lines)
{
var valArray : Array = line.split ( "," );
var assoc : Object = {};
for (var i : int = 0; i < keyArray.length; i++)
{
var key : String = keyArray[i];
if (key != null && key != "") assoc[key] = valArray[i];
}
assocArray.push ( assoc );
}
return assocArray;
}
data = data.replace (/\R$/, "");
这应该可以解决问题。 - weltraumpirat