1

我需要使用 Flash AS3 将 ByteArray 写入本地磁盘上的文件。flash 应用程序在本地运行(它是一个投影仪 exe)。

我发现 FileReference 类具有完美的 save() 函数。唯一的问题是,这个函数会打开一个文件浏览器,让用户选择存储文件的位置。但是-我已经将路径作为字符串保存到该位置而无需用户操作(因为我一次性将大量文件导出到该目录中,并且不希望用户手动选择每个文件)。

有没有办法在不打开文件浏览器的情况下将字节数组从投影仪存储到本地磁盘?

我也在使用 mdm Zinc,它实际上提供了将 ByteArray 保存到磁盘的功能,但是由于某些未知原因,此功能无法正常工作。我已经提交了一个错误报告,但我需要非常紧急地让它工作,所以我正在寻找替代品!

谢谢!

4

2 回答 2

7

请注意,您将应用程序作为 .exe 运行,我假设您使用的是 AIR 的某些变体,并且具有访问文件系统的安全权限。您应该看一下FileStream类。这是一个非常简单的示例,说明了我如何使用它将 ByteArray 写入硬编码文件位置。

var fs : FileStream = new FileStream();
var targetFile : File = File.desktopDirectory.resolvePath("test.raw");
fs.open(targetFile, FileMode.WRITE);
fs.writeBytes(myByteArray,0,myByteArray.length);
fs.close();
于 2013-06-25T10:12:09.370 回答
1

如果你只需要持久性(你读你写的),你可以看看 SharedObject。

于 2009-11-17T08:36:47.637 回答