簡體   English   中英

使用Acrobat JavaScript檢查文件是否存在

[英]Check if file exists using Acrobat javascript

我試圖在運行其他代碼之前確定桌面上是否存在特定的.xml文件。 以下受信任腳本位於我的Javascripts文件夾級目錄中。 以下注釋為“第一部分”的部分僅將表單的所有字段設置為可打開/可寫。 第二部分尋找.xml文件,從中導入XFA數據。

我的問題是,我想首先確定此.xml文件是否存在。 現在,如果該文件不存在,它將顯示一個對話框,以瀏覽該文件。 相反,我希望它在xml文件不存在時顯示警報,並且從不顯示對話框 我究竟做錯了什么?

任何幫助都是巨大的,謝謝

碼:

var myTrustFunctTwo = app.trustedFunction(function(doc)
{

//First Part
  for (var nPageCount = 0; nPageCount < doc.numPages; nPageCount++) {
        var oFields = doc.xfa.layout.pageContent(nPageCount, "field");
  //app.alert(oFields,0);
        var nNodesLength = oFields.length;
        // Set the field property.
        for (var nNodeCount = 0; nNodeCount < nNodesLength; nNodeCount++) {
            oFields.item(nNodeCount).access = "open";
        }
    }

//Second Part
app.beginPriv();
doc.importXFAData({
          cPath:"/c/Users/ME/Desktop/Filled_In.xml"
                 });
app.endPriv();
});
app.trustedFunction(myTrustFunctTwo);

更新代碼,包括嘗試/捕獲塊

var myTrustFunctTwo = app.trustedFunction(function(doc) {

    for (var nPageCount = 0; nPageCount < doc.numPages; nPageCount++) {
        var oFields = doc.xfa.layout.pageContent(nPageCount, "field");
        //app.alert(oFields,0);
        var nNodesLength = oFields.length;
        // Set the field property.
        for (var nNodeCount = 0; nNodeCount < nNodesLength; nNodeCount++) {
            oFields.item(nNodeCount).access = "open";
        }
    }


    try {

        app.beginPriv();
        doc.importXFAData({
            cPath: "/c/Users/ME/Desktop/Filled_In.xml"
        });
        app.endPriv();

    } catch (e) {
        app.alert("No File Found", 1);
    }


});

app.trustedFunction(myTrustFunctTwo);

如果您嘗試導入的文件不存在,您將收到一條錯誤消息。 使用try…catch ,您可以捕獲該消息並退出函數,從而防止后續代碼運行。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM