2013-01-23 3 views
0

나는 video-1.flv, video-2.flv, video-3.flv, video-4.flv, video-5.flv와 같은 5 개의 비디오 파일을 가지고 있습니다. 내가 먼저 비디오 1.flv을 읽고 아래의 코드를 사용하여 BYTEARRAY에 저장 :플렉스 byteArray의 바이트 추가

private var byteArray = new byteArray(); 
byteArray = readFile(VIDEO-FILE-PATH); 

private function readFile(fileName:String):ByteArray 
{ 
    var data:ByteArray = new ByteArray(); 
    var inFile:File = File.applicationDirectory; // source folder is application 
    inFile = inFile.resolvePath(fileName); // name of file to read 
    var inStream:FileStream = new FileStream(); 
    inStream.open(inFile, FileMode.READ); 
    inStream.readBytes(data, 0, data.length); 
    inStream.close(); 

    return data; 
} 

지금 내가 읽고 비디오 - 5.flv에 비디오 2.flv에서 다음 비디오를 저장할을 같은 byteArray

어떻게하면됩니까? 모든 코드 견본 또는 웹 링크는 높이 평가 될 것입니다.

답변

1

모든 파일에 대해 동일한 BYTEARRAY을 사용할 수 있습니다, 데이터는 단지 readFile 방법에 버퍼를 전달하고 data.length (먼저 다음 판독이 가능한 모든 데이터를 읽을 수 있도록이 0의 읽기 및 제거를 자동으로 추가됩니다 모든 prevuse 버퍼의 길이를 가진 새로운 파일을 읽는 과정)은 inStream.readBytes(data, 0, data.length); 줄에있다. 예 :

var buffer:ByteArray = new ByteArray(); 
for(var i:int = 1; i < 6; i++) 
{ 
    readFile("video-"+i+".flv", buffer); 
} 

private function readFile(fileName:String, buffer:ByteArray):ByteArray 
{ 
    var inFile:File = File.applicationDirectory; // source folder is application 
    inFile = inFile.resolvePath(fileName); // name of file to read 
    var inStream:FileStream = new FileStream(); 
    inStream.open(inFile, FileMode.READ); 
    inStream.readBytes(buffer); 
    inStream.close(); 

    return buffer; 
}