トップページ
ひらく | たたむ | ページトップ
↓マウスで反転選択した文字を検索
JScript
   
ページ内検索 ページ外検索
検索したい文字を入力して
ENTERを押すと移動します。
\n
[ トップページ ]
[ ____CommandPrompt ] [ ____JScript ] [ ____MySQL ] [ ____Cygwin ] [ ____Java ] [ ____Emacs ] [ ____Make ] [ ____Perl ] [ ____Python ] [ ____OpenGL ] [ ____C# ] [ ____StyleSheet ] [ ____C++ ] [ ____Winsock ] [ ____Thread ] [ ____VisualStudio ] [ ____C ] [ ____Win32API ] [ ____Lua ] [ ____PhotoShop ]
ヘッダ検索
___

■ ファイルシステム(FileSystem)






  WARNING
    ActiveXObject を利用すると ブラウザー経由で 
    Local マシン上でファイル操作, プログラムの実行できてしまう
    ( だから Browser の警告がでる )


___

■ DeleteFolder

SYNTAX DeleteFolder( path, // 削除する Folder( 最後の要素に * を使用可能 ) [, force ] // 読み取り専用のファイルも消す Default: false )
    var fs = new ActiveXObject("Scripting.FileSystemObject");  
    fs.DeleteFolder( "d:/foo" );

    // wildcard 指定
    fs.DeleteFolder( "d:/foo*" );

    // Directory 内のファイルが使用中ならば, 削除できない( "書き込みできません" )
WARNING 存在しないフォルダを削除するとエラーになる
    // パスが見つかりません
    fs.DeleteFolder( "d:/foo" );        


    // チェックすること
    if ( fs.FolderExists( "d:/foo" ) ) {
      fs.DeleteFolder( "d:/foo" );
    }
___

■ DeleteFile

SYNTAX DeleteFile( path // 削除するファイルパス [, force ] // 読み取り専用のファイルも消す Default: false );
    var fs = new ActiveXObject("Scripting.FileSystemObject");  

    fs.DeleteFile( "d:/foo.txt" );


    // 読み取り専用は消せない.
    // ERROR : 書込みできません
    fs.DeleteFile( "d:/foo.txt" );


    // ないファイルを消すとエラー
    // ERROR : ファイルがみつかりません
    fs.DeleteFile( "d:/foobar", 1 );

パターンにマッチしたファイルを削除する。 ( フォルダは削除されない )

    // test 以下のすべてのファイル
    fs.DeleteFile( "d:/test/*", 1 );

    // .txt  を削除
    fs.DeleteFile( "d:/test/*.txt", 1 );
___

■ CopyFolder

SYNTAX CopyFolder ( src, dst[, overwrite] ); DESC ディレクトリをコピーする。
    fs.CopyFolder( "d:/src", "d:/dst", true );
___

■ CopyFile

SYNTAX CopyFile ( src, dst[, overwrite] ); DESC src の file を dst で指定したパスへコピーする。 ディレクトリをコピーするには CopyFolder を使う。 overwrite : DEFAULT true

    // "c:/src.txt""d:/dst.txt" に copy
    fs.CopyFile( "c:/src.txt", "d:/dst.txt" );


    // すでにファイルがあれば上書き
    fs.CopyFile( "c:/src.txt", "d:/dst.txt" );

    // overwrite = false にすると , ERROR になる
    fs.CopyFile( "c:/src.txt", "d:/dst.txt", false );
                          

    // dst の末尾に [/] をつけると Directory 指定とみなされる
    //  RET: d:/src.txt
    fs.CopyFile( "c:/src.txt", "d:/" );
    

    // wildcard を指定すると コピー元に複数の指定ができる
    fs.CopyFile( "c:/*.txt", "d:/" );


    // このとき dst は Directory として扱われる
    fs.CopyFile( "c:/*.txt", "d:/test" );


    // マッチするファイルがないと ERROR
    fs.CopyFile( "c:/*.txt", "d:/test" );

    // dst のパスがないと ERROR
    fs.CopyFile( "c:/*.txt", "d:/foobar" );

___

■ MoveFile

SYNTAX MoveFile( src, dst ); DESC src から dst へファイルを移動

    var fs = new ActiveXObject("Scripting.FileSystemObject");

  WARNING 
    // dst に既にファイルがあるとエラー
    fs.MoveFile( "c:/foo.txt", "d:/bar.txt" );
    // ERROR: 既に同名のファイルがあります
    fs.MoveFile( "c:/foo.txt", "d:/bar.txt" );

    
    // dst が Directory 名でもエラー
    fs.MoveFile( "c:/foo.txt", "d:" );

    // [ / ] で終われば OK
    fs.MoveFile( "c:/foo.txt", "d:/" );



    // 同じディレクト内ならばリネームとなる
    fs.MoveFile( "c:/src.txt", "c:/dst.txt" );
    
___

■ FolderExists

SYNTAX FolderExist( path ) DESC Path の Directory があるか返す RET true : ある false : ない
___

■ FileExists

SYNTAX FileExists( path ) DESC Path の File があるか返す RET true : ある false : ない
    if ( fs.FileExists( path ) ) {

    }
___

■ OpenTextFile

SYNTAX OpenTextFile( OpenTextFile( file[, iomode[, isCreate[, format] ] ] ) ); OpenTextFile( file, // path iomode, // 1:R, 2:W, 8:A isCreate, // true: Fileがなければつくる // false:つくらない ( Default: false ) ); DESC File を開く。 WARNING 指定したパスのディレクトリがない場合はエラーになる。 先にディレクトリをつくる必要がある
    fs.OpenTextFile( "d:/foo/bar/goo/foo.txt", 2, true );


    // ReadOnly で "d:/foo.txt" をひらく
    fs.OpenTextFile( "d:/foo.txt", 1 );

    // WriteMode ( File がないならつくる )
    fs.OpenTextFile( "d:/foo.txt", 2, true );



    // File を開いてかく
    var fp = fs.OpenTextFile("d:/foo.txt", 2, true );
    fp.WriteLine( "test" );
    fp.Close();


    // utf-16 のファイルを開く
    var fp = fs.OpenTextFile("d:/foo.txt", 2, true, -1 );


    WARNING 
      
    // ないファイルを開くと ERROR
    fs.OpenTextFile( "d:/foo.txt", 1, false );

___

■ GetFile

SYNTAX GetFile( path ) DESC path で指定した File Object を取得する
    var o = fs.GetFile( "d:/test.txt" );

    // プロパティにアクセスする
    o.Path;
    
    // 

___

■ GetFolder

SYNTAX GetFolder( path ) DESC Folder Object を取得する WARNING path が Directory でない場合はエラーとなる。

    var fs = new ActiveXObject("Scripting.FileSystemObject");
    var f = fs.GetFolder ( "c:/Documents and Settings/" );

    // コレクションを列挙するには
    // Enumerator ( Iterator ) をつかう
    var fc = new Enumerator ( f.SubFolders );

    // File を列挙
    var itrF = new Enumerator ( f.Files );


    // Sub Directory をなめる
    for ( ; !fc.atEnd(); fc.moveNext () ){

      // Enumerator の各アイテムをとるには item()
      // Folder Object がかえる

      var oFolder = fc.item();

      // "Name" Property をとる
      //   RET: All Users
      WScript.echo( fc.item().Name );

      // Path
      //   RET: C:\Documents and Settings\All Users
      WScript.echo( fc.item().Path );

      // 最終更新日
      //   2000/05/24 7:41:57
      WScript.echo( fc.item().DateLastModified );

    }

___

■ Folder

フォルダをあらわすオブジェクト パス名から参照をとる
    var d = fs.GetFolder( "c:/Windows/" );
プロパティ
    // フルパス
    d.Path;

    // フォルダ名
    d.Name
    
    // 直下のフォルダ
    d.SubFolders;

    var fs = new ActiveXObject("Scripting.FileSystemObject");
    var f = fs.GetFolder ( "c:/Documents and Settings/All Users/" );


    // Folder のファイルのリストをかえす ( 隠しファイルなどすべて含む )
    var fc = new Enumerator ( f.Files );


    for ( ; !fc.atEnd(); fc.moveNext () ){

       // コレクションから File Object をとりだす
       var file = fc.item();
       
       // Name Property
       WScript.echo( file.Name );

       // 最終更新日
       file.DateLastModified;

       

    }

___

■ File

DESC
    var f = fs.GetFile ( "d:/test.txt" );

    // ファイル, フォルダの種類に関する情報を返す
    // xxx.txt -> "テキスト文書" を返す
    f.Type;

    // ファイルのフルパス
    f.Path;

    // 最終更新日
    f.DateLastModified;

    // サイズ ( byte 単位 )
    f.Size;


NINJAIDX 1