「開いている文書のファイル名を変更する」の版間の差分

提供: MeryWiki
ナビゲーションに移動 検索に移動
Yuko (トーク | 投稿記録)
ページの作成:「<syntaxhighlight lang="javascript"> #title = "開いている文書のファイル名を変更する" function main() { var fso = new ActiveXObject("Scripting.FileSystemObject"); // パスを取得 var dir = document.Path; var name = document.Name; var beforePath = dir + name; // 存在チェック if (!fso.FileExists(beforePath)) { alert("ファイルが存在しません"); return; } // ファイルが保存…」
 
Yuko (トーク | 投稿記録)
編集の要約なし
37行目: 37行目:
         return;
         return;
     }
     }
    // ファイルを閉じる
    if (saveYes) document.Save(beforePath);
    document.Close();


     // ファイル名を変更する
     // ファイル名を変更する
     fso.MoveFile(beforePath, afterPath);
     document.Save(afterPath);


     // 変更後のファイル名で開く
     // 変更前のファイルを削除する
     editor.OpenFile(afterPath, meEncodingNone, meOpenAllowNewWindow);
     fso.DeleteFile(beforePath);
}
}


main();
main();
</syntaxhighlight>
</syntaxhighlight>

2025年3月15日 (土) 17:42時点における版

#title = "開いている文書のファイル名を変更する"

function main() {
    var fso = new ActiveXObject("Scripting.FileSystemObject");

    // パスを取得
    var dir = document.Path;
    var name = document.Name;
    var beforePath = dir + name;
    // 存在チェック
    if (!fso.FileExists(beforePath)) {
        alert("ファイルが存在しません");
        return;
    }

    // ファイルが保存されることを確認する
    var saveYes = false;
    if (!document.Saved) {
        if (Confirm("ファイルが変更されています。\nファイル名変更前に上書き保存する必要があります。\n保存しますか?")) {
            saveYes = true;
        } else {
            return;
        }
    }

    // 新しいファイル名を入力
    var rename = Prompt("変更後のファイル名を入力してください", name);
    if (!rename) {
        // 未入力の場合は何もしない
        return;
    }
    var afterPath = dir + rename;
    // リネーム後のファイルが存在する場合はエラー
    if (fso.FileExists(afterPath)) {
        alert("ファイルが存在します");
        return;
    }

    // ファイル名を変更する
    document.Save(afterPath);

    // 変更前のファイルを削除する
    fso.DeleteFile(beforePath);
}

main();
スポンサーリンク