あるディレクトリから別のディレクトリにjpgファイルをコピーできるコードを作成しようとしています。私が気にしているのは、選択されたjpgをバイトにロードし、その後writebytesを介して指定のフォルダに書き込むことです。これはデスクトップのAIRアプリケーションです。Adobe Air FileStream 1つのディレクトリから別のディレクトリへのjpgのコピー
private function update_treebg(event:MouseEvent):void {
saveDir = 'structure/' + id + '/bg.jpg';
file.addEventListener(Event.SELECT, onFileSelected);
file.browseForOpen("Select an image", [imgFilter]);
}
private function onFileSelected(event:Event):void {
file.removeEventListener(Event.SELECT, onFileSelected);
fs.open(event.target as File, FileMode.READ);
fs.readBytes(bytes);
fs.close();
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onFileLoaded);
loader.loadBytes(bytes);
}
private function onFileLoaded(event:Event):void {
event.target.removeEventListener(Event.COMPLETE, onFileLoaded);
var targetFile:File = File.desktopDirectory.resolvePath(saveDir);
fs.open(targetFile, FileMode.WRITE);
fs.writeBytes(event.target.bytes, 0, event.target.bytes.length);
fs.close();
}
ファイルを書き込む度に、破損したjpgファイルが指定されたディレクトリに表示されます。私は何か見落としてますか?あなたがこれを行うためのよりよい方法を知っているなら、私にも知らせてください!
これは私が周りにグーグルで行っていたものです。ありがとう。 – user1234567