AS3/FLASH/AIR:是否可以在Excel中打开XML?对

AS3/FLASH/AIR:是否可以在Excel中打开XML?对,xml,excel,actionscript-3,flash,air,Xml,Excel,Actionscript 3,Flash,Air,是否可以从AIR桌面应用程序在Excel中打开XML 我有一个XML数据库,我想在Excel中打开它进行打印。我认为,打印存储在datagrid(闪存组件)中的完整数据是不可能的 提前谢谢 :UPDATE I: var process:NativeProcess; var nativeProcessStartupInfo:NativeProcessStartupInfo = new NativeProcessStartupInfo(); var excel:File = new File();

是否可以从AIR桌面应用程序在Excel中打开XML

我有一个XML数据库,我想在Excel中打开它进行打印。我认为,打印存储在datagrid(闪存组件)中的完整数据是不可能的

提前谢谢

:UPDATE I:

var process:NativeProcess;
var nativeProcessStartupInfo:NativeProcessStartupInfo = new NativeProcessStartupInfo();
var excel:File = new File(); 
excel.nativePath = "path\to\excel";
if(excel.exists){
    trace (excel.nativePath);
}
nativeProcessStartupInfo.executable = excel;

var processArgs:Vector.<String> = new Vector.<String>();
processArgs[0] = "path\to\xml";
nativeProcessStartupInfo.arguments = processArgs;

process = new NativeProcess();
process.start(nativeProcessStartupInfo);
null.point3r的帮助下,我找到了Excel。现在我必须试着理解如何用它打开XML

他给了我线索和链接:

使用excel并打开XML文件。(创建并将XML路径作为传递)

但我对这方面还不熟悉,所以,如果有人举个例子,我会感谢他的帮助

到目前为止我所拥有的:

import flash.filesystem.File;

var myXML = File.documentsDirectory.resolvePath("storage/companies.xml");

if(myXML.exists){
    trace ("Eureka!!!");
}

var excel:File = new File(); 
excel.nativePath = "C:\\Archivos de programa\\Microsoft Office\\Office12\\excel.exe";

if(excel.exists){
    trace ("Got it!!!");
}
//get executable(file.nativePath):File;
注意:我将使用一个数组和一个循环来检查不同的Office版本

::更新二::

var process:NativeProcess;
var nativeProcessStartupInfo:NativeProcessStartupInfo = new NativeProcessStartupInfo();
var excel:File = new File(); 
excel.nativePath = "path\to\excel";
if(excel.exists){
    trace (excel.nativePath);
}
nativeProcessStartupInfo.executable = excel;

var processArgs:Vector.<String> = new Vector.<String>();
processArgs[0] = "path\to\xml";
nativeProcessStartupInfo.arguments = processArgs;

process = new NativeProcess();
process.start(nativeProcessStartupInfo);
我遇到了错误#3219:无法启动NativeProcess。”当前配置文件中不支持“”:

import flash.filesystem.File;

var myXML = File.documentsDirectory.resolvePath("storage/companies.xml");

if (myXML.exists) {
    trace(myXML.nativePath);
}

var process:NativeProcess;
var nativeProcessStartupInfo:NativeProcessStartupInfo = new NativeProcessStartupInfo();
var excel:File = new File();
excel.nativePath = "C:\\Archivos de programa\\Microsoft Office\\Office12\\excel.exe";

if (excel.exists) {
    trace(excel.nativePath);
}

nativeProcessStartupInfo.executable = excel;

var processArgs:Vector.<String> = new Vector.<String>();
processArgs[0] = String(myXML.nativePath);
nativeProcessStartupInfo.arguments = processArgs;

process = new NativeProcess();
process.start(nativeProcessStartupInfo);
导入flash.filesystem.File;
var myXML=File.documentsDirectory.resolvePath(“storage/companys.xml”);
if(myXML.exists){
跟踪(myXML.nativePath);
}
var过程:NativeProcess;
var nativeProcessStartupInfo:nativeProcessStartupInfo=new nativeProcessStartupInfo();
var excel:File=新文件();
excel.nativePath=“C:\\Archivos de programa\\Microsoft Office\\Office12\\excel.exe”;
如果(excel.exists){
跟踪(excel.nativePath);
}
nativeProcessStartupInfo.executable=excel;
变量processArgs:Vector.=新向量();
processArgs[0]=字符串(myXML.nativePath);
nativeProcessStartupInfo.arguments=processArgs;
进程=新的NativeProcess();
进程启动(nativeProcessStartupInfo);
  • 检查excel是否位于默认位置:

    C:\Program Files\Microsoft Office\OfficeX(X取决于Office版本)

  • 如果找不到,请显示对话框或提示用户安装

  • 使用excel并打开XML文件。(创建XML路径并将其传递为)


更新:

var process:NativeProcess;
var nativeProcessStartupInfo:NativeProcessStartupInfo = new NativeProcessStartupInfo();
var excel:File = new File(); 
excel.nativePath = "path\to\excel";
if(excel.exists){
    trace (excel.nativePath);
}
nativeProcessStartupInfo.executable = excel;

var processArgs:Vector.<String> = new Vector.<String>();
processArgs[0] = "path\to\xml";
nativeProcessStartupInfo.arguments = processArgs;

process = new NativeProcess();
process.start(nativeProcessStartupInfo);
var过程:NativeProcess;
var nativeProcessStartupInfo:nativeProcessStartupInfo=new nativeProcessStartupInfo();
var excel:File=新文件();
excel.nativePath=“path\to\excel”;
如果(excel.exists){
跟踪(excel.nativePath);
}
nativeProcessStartupInfo.executable=excel;
变量processArgs:Vector.=新向量();
processArgs[0]=“path\to\xml”;
nativeProcessStartupInfo.arguments=processArgs;
进程=新的NativeProcess();
进程启动(nativeProcessStartupInfo);

哪个部件不工作?试图打开Excel或获取其中的XML?查找Excel没有问题,因此我可以在数组中定义它的可能路径:Office11、Office12。。。然后在循环中搜索它。现在我必须看看如何在Excel中打开XML。非常感谢null.point3r。我仍然不知道如何定义“var processArgs:Vector.=newvector.()”。我必须使用:excel.exe“path\to\xml”,不是吗?我收到错误#3219:无法启动NativeProcess。”当前配置文件中不支持。“:@Sergio,将
extendedDesktop
添加到[yourApp]-app.xmlThank null.point3r。我稍后再试。现在我必须去找运动学家。干杯