在我最近的项目中,我需要获取一个文件路径,用户可以在其中使用对话框指定/选择文件。
这是我要做的代码;
package
{
import flash.display.MovieClip;
import flash.events.MouseEvent;
import flash.events.Event;
import flash.filesystem.File;
import flash.net.FileFilter;
import xlsxreader.Worksheet;
import xlsxreader.XLSXLoader;
public class MainClass extends MovieClip
{
var fileGet: File = new File();
var excel_loader: XLSXLoader = new XLSXLoader();
public function STRIMSMainClass()
{
var import_btn: MovieClip = MovieClip(root).powerButton_mc.utilitiesButton_mc;
import_btn.addEventListener(MouseEvent.CLICK, selectExcelFile);
fileGet = File.applicationDirectory;
fileGet.addEventListener(Event.CANCEL, fileCancel);
fileGet.addEventListener(Event.SELECT, fileSelect);
excel_loader.addEventListener(Event.COMPLETE, loadingComplete);
}
function selectExcelFile(e: MouseEvent): void
{
var fileFilter = new FileFilter("Select Excel File", "*.xls;*.xlsx;*.xlsm");
fileGet.browseForOpen("Select Excel File", [fileFilter]);
}
function fileCancel(e: Event): void
{}
function fileSelect(e: Event): void
{
excel_loader.load(fileGet.nativePath);
}
function loadingComplete(e: Event): void
{}
}
}
但是,我的计算机无法打开已发布的.exe文件;它只是闪烁并自动关闭。我在发布之前测试了代码,并且工作正常。
当我尝试逐行浏览代码时,请删除此行var fileGet: File = new File()
以及与之关联的任何行,可以正常打开.exe文件。
我需要filesystem.File
才能获取需要打开的文件的.nativePath,所以我不能排除var fileGet: File = new File()
。这也发生在我同事的PC中。
请帮助我解决目前发生的这个奇怪的错误。这是我第一次尝试使用Adobe Animate开发软件。