Javascript 检查Adobe Extendscript中是否存在本地文件

Javascript 检查Adobe Extendscript中是否存在本地文件,javascript,json,adobe-indesign,basil.js,Javascript,Json,Adobe Indesign,Basil.js,我尝试使用普通js循环检查本地文件(.jpg)。我得到一个错误,例如,file5d3eb1905b243.jpg不存在,但实际上确实存在 另外,我不明白为什么ins中的else语句不起作用,为什么5d3eb1905b243.jpg没有替换为none.jpg 也许路径就是问题所在 代码如下: if(obj[i].hasOwnProperty('sharedimage\u id')){ var imgFile=新文件( “/Users/student/Desktop/seminary_roboboo

我尝试使用普通js循环检查本地文件(.jpg)。我得到一个错误,例如,file
5d3eb1905b243.jpg
不存在,但实际上确实存在

另外,我不明白为什么ins中的
else
语句不起作用,为什么
5d3eb1905b243.jpg
没有替换为
none.jpg

也许路径就是问题所在

代码如下:

if(obj[i].hasOwnProperty('sharedimage\u id')){
var imgFile=新文件(
“/Users/student/Desktop/seminary_robobooks/archiv/img/”+
obj[i].共享图像\u id+
“.jpg”,
);
if(imgFile.exists){
仰泳(imgFile);
图像(obj[i].sharedimage_id+'.jpg',56.5,70.793,69,42);
}否则{
仰泳(imgFile);
图像('none.jpg',56.5,70.793,69,42);
}
}

您没有为您的问题提供足够的上下文

  • 是一个用于生成式编程的InDesign Javascript/Extendscript库。与Processing和P5.js类似
  • Extendscript是一种Adobe风格的Javascript(Ecmascript 3),带有一些附加内容,如
    File
    XML
  • 我们无法判断文件系统上的文件是否存在或路径是否正确
  • 问题:您使用的是哪种Basil版本?v2(仍处于测试阶段)

    下面是要继续讨论的一些样板代码和一些提示

  • noStroke
    没有参数,请参见
  • 文件
    none.jpg
    需要位于您正在执行的InDesign文档旁边的数据目录中,或者需要提供一个绝对路径,请参见
  • 请参见有关如何处理图像的说明
  • var obj=[
    {
    sharedimage_id:'123456',
    },
    {
    sharedimage_id:'789012',
    },
    ];
    对于(变量i=0;i

    另外,我是作者之一,我正在链接到参考的当前开发版本。这些链接将来可能会断开。

    控制台中有错误吗?代码在哪里执行?如果在浏览器中运行,您不能简单地访问甚至请求用户系统上的任意文件。这将是一个严重的安全问题。我在中的任何地方都看不到
    文件
    ,而且它不是JavaScript的标准部分。InDesign提供了吗?如果是这样,您是否查阅了文档?我假设您没有在浏览器中尝试此操作,但如果您尝试了,则不会采用路径,并且您无法从浏览器访问本地文件。代码在InDesign CS6中运行<代码>文件
    在另一个场合确实有效。谢谢你的建议。我创建了一个
    数据
    文件夹,一切正常!伟大的很高兴它成功了。您使用的是v2 Basil版本吗?看起来是这样。不,我用的是basil.js1.0。10@VHS我建议转到v2。我们修复了很多bug,它实际上非常稳定。您可以在这里获得最新的v2,您可以将其放在代码旁边,只需将其包含在
    /@include./basil.js'
    中即可,谢谢。顺便说一句,我在这里提出了一个关于InDesign脚本的问题,也许你可以在那里帮助我?