我想测试.sol文件是否存在,该文件可能由我的程序编写,也可能没有。
在测试程序中,假设我的共享对象定义如下:
var mySharedObject = SharedObject('foldername'+'/StoredItem');
我写这样的.sol:
mySharedObject.data.storedthing = 'storeddatum';
mySharedObject.flush();
一旦我写了sol,当我尝试测试它是否存在时:
if(mySharedObject.data.storedItem)
无论文件是否真的存在,我都会得到'是'!也就是说,如果我在运行测试之前手动删除sol文件,测试仍然会出现正面!如果我跑
mySharedObject.clear()
在我做测试之前,我得到一个'不',这是你期望的。但是,即使我手动将sol的精确副本替换回相应的文件夹,我仍然会得到'不'!
就好像AS3实际上不会读取文件而是将共享对象作为静态变量读取。这是一种痛苦,因为否则我必须使用File类测试sol的存在。
关于'if(mySharedObject.data.storedItem)'实际上在做什么的任何想法?