Flash 闪存写入字节数组到磁盘上的文件

Flash 闪存写入字节数组到磁盘上的文件,flash,file,save,hard-drive,mdm-zinc,Flash,File,Save,Hard Drive,Mdm Zinc,我需要用Flash AS3将字节数组写入本地磁盘上的文件。flashapplication在本地运行,它是一个投影仪exe 我发现FileReference类具有save函数,它工作得非常完美。唯一的问题是,此函数打开一个文件浏览器,让用户选择文件的存储位置。但是-我的路径已经是字符串,需要保存到此位置而不使用useraction,因为我要一次性将大量文件导出到此目录,并且不希望用户手动选择每个文件 有没有一种方法可以在不打开文件浏览器的情况下将投影仪中的字节数组存储到本地磁盘 我还使用了mdm

我需要用Flash AS3将字节数组写入本地磁盘上的文件。flashapplication在本地运行,它是一个投影仪exe

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

有没有一种方法可以在不打开文件浏览器的情况下将投影仪中的字节数组存储到本地磁盘

我还使用了mdm ZINK,它实际上提供了一个将字节数组保存到磁盘的函数,但由于一些未知的原因,该函数不起作用。我已经提交了一份错误报告,但我需要让这个工作非常紧迫,所以我正在寻找替代品


谢谢

如果您需要的只是持久性,您可以阅读您编写的内容,您可以查看SharedObject。

如果您需要的只是持久性,您可以阅读您编写的内容,您可以查看SharedObject。

注意,您正在以.exe的形式运行应用程序,我假设您使用的是某种AIR变体,并具有访问文件系统的安全权限。你应该看看这门课。下面是一个非常简单的示例,演示了如何使用它将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();

请注意,您正在以.exe的形式运行应用程序,我假设您使用的是某种AIR变体,并且具有访问文件系统的安全权限。你应该看看这门课。下面是一个非常简单的示例,演示了如何使用它将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();

不,我实际上需要写入磁盘。该工具将导出在应用程序中自动生成的jpg文件,我将它们作为ByteArray数据,但我需要将它们写入特定位置的磁盘。如果不使用AIR,这应该是可能的。答案是:不,没有AIR,也没有请求用户许可的对话框,这是不可能的。想象一下,如果这是可能的话:任何随机的网站都可以在你的磁盘上存储400 GB的数据。该工具将导出在应用程序中自动生成的jpg文件,我将它们作为ByteArray数据,但我需要将它们写入特定位置的磁盘。如果不使用AIR,这应该是可能的。答案是:不,没有AIR,也没有请求用户许可的对话框,这是不可能的。想象一下,如果这是可能的话:任何随机的网站都可以在你的磁盘上存储400 GB的数据。