X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=_src%2F_vbslib%20manual.files%2Fvbslib.files%2Fvbslib_23.html;fp=_src%2F_vbslib%20manual.files%2Fvbslib.files%2Fvbslib_23.html;h=e445f5e7e739f629cd43e6b4b05a9c5cd540303e;hb=b3a835050ab0797a5a3d94ba4e3b6a30670622ae;hp=36a6215790e1e990428d6d3a1e43976eec11ffd9;hpb=6f4a5f31ee0636f2acacbc0f75f98ecd603e7102;p=vbslib%2Fmain.git diff --git a/_src/_vbslib manual.files/vbslib.files/vbslib_23.html b/_src/_vbslib manual.files/vbslib.files/vbslib_23.html index 36a6215..e445f5e 100644 --- a/_src/_vbslib manual.files/vbslib.files/vbslib_23.html +++ b/_src/_vbslib manual.files/vbslib.files/vbslib_23.html @@ -87,1420 +87,1415 @@ function out( text ){ text.style.display = "none"; } - + -© -¥ -£ +© +¥ +£
ª
- - - -
-  Set bin = new_BinaryArrayFromBase64( "EjRWeA==" )
- -
-Function  new_BinaryArrayFromBase64( Base64_Text as string ) as BinaryArray
-
-Base64 ‚ŃGƒ“ƒR[ƒh‚³‚ꂽ•¶Žš—ñ‚©‚çƒoƒCƒiƒŠ”z—ñ‚𐶐¬‚µ‚Ü‚·B
-
+ + + +
+Function  IsMatchedWithWildcard( Path, WildCard ) as boolean
+
+ƒƒCƒ‹ƒhƒJ[ƒh‚Ƀ}ƒbƒ`‚·‚é‚©‚Ç‚¤‚©‚ð•Ô‚µ‚Ü‚·B
+
yˆø”z
-
-Base64_Text
-
-Base64 ‚ŃGƒ“ƒR[ƒh‚³‚ꂽ•¶Žš—ñ
-
-•Ô‚è’l
-
-¶¬‚³‚ꂽƒoƒCƒiƒŠ”z—ñ
-
-ƒTƒ“ƒvƒ‹
-
-ƒ\[ƒX
-
-¨ System.vbs
-
-ƒeƒXƒg
-
-¨ T_Binary.vbs
-
-Test_of_Base64
-
-ŠÖ˜A
- - - - - - - - - - - -© -¥ -£ - - - -
-  Set bin = new_BinaryArrayAsText( "Š¿Žš", "EUC-JP" )
- -
-Function  new_BinaryArrayAsText( Text as string, CharacterSet as string ) as BinaryArray
-
-•¶Žš—ñ‚©‚çŽw’肵‚½•¶ŽšƒR[ƒhƒZƒbƒg‚̃oƒCƒiƒŠEƒf[ƒ^‚ðŽ‚ÂƒoƒCƒiƒŠ”z—ñ‚𐶐¬‚µ‚Ü‚·B
-
-yˆø”z
-
-Text
-
-•¶Žš—ñ
-
-CharacterSet
-
-•¶ŽšƒR[ƒhƒZƒbƒg
-
+
+ƒƒCƒ‹ƒhƒJ[ƒh
+
+WildCard
+
+ŒŸ¸‚·‚镶Žš—ñ
+
+Path
+
+WildCard ‚ÅŽw’è‚Å‚«‚郏ƒCƒ‹ƒhƒJ[ƒh‚́Aæ“ª‚É * ‚¾‚¯‚Å‚·B
+WildCard ‚É * ‚ª–³‚¢•¶Žš—ñ‚àŽw’è‚Å‚«‚Ü‚·B
+
+(src)
+
ƒTƒ“ƒvƒ‹
-
-ƒ\[ƒX
-
-¨ System.vbs
-
-ƒeƒXƒg
-
-¨ T_Binary.vbs
-
-T_Binary_TextCharacterSet
-
-ŠÖ˜A
- -
-¶¬‚³‚ꂽƒoƒCƒiƒŠ”z—ñ
-
+ +
+Assert  IsMatchedWithWildcard( "a.bmp", "*.bmp" ) = True
+Assert  IsMatchedWithWildcard( "a.bmp", "*.jpg" ) = False
+
+Path ‚ªƒƒCƒ‹ƒhƒJ[ƒh‚Ƀ}ƒbƒ`‚µ‚½‚©‚Ç‚¤‚©
+
•Ô‚è’l
- -
-•¶ŽšƒR[ƒhƒZƒbƒgˆê——
-
-EUC-JP Œ`Ž®‚Ì•¶Žš—ñ‚ªŠi”[‚³‚ꂽƒoƒCƒiƒŠ”z—ñ‚𐶐¬‚µ‚Ü‚·B
- - - - + + + + - + -© -¥ -£ - - - -
-Default Property  BinaryArray::Item( i as integer ) as integer
-
-”z—ñ”ԍ†‚ðŽg‚Á‚āAƒoƒCƒiƒŠ”z—ñ‚Ì—v‘f‚ðŽQÆ‚µ‚Ü‚·B iƒfƒtƒHƒ‹ƒgEƒvƒƒpƒeƒBj
-
+© +¥ +£ + + + +
+Sub  RemoveWildcardMatchedArrayItems( in_out_PathArray as array of string, WildCard as string )
+
+ƒƒCƒ‹ƒhƒJ[ƒh‚Ƀ}ƒbƒ`‚µ‚½ƒpƒX‚ð”z—ñ‚©‚珜‚«‚Ü‚·B
+
yˆø”z
-
-i
-
-”z—ñ‚Ì—v‘f‚̔ԍ†B æ“ª‚Í 0
- -
-Dim  bin : Set bin = new BinaryArray
-bin.Load  "a.bin"
-echo  bin(0) '// bin.Item(0) ‚Æ“¯‚¶
-bin(0) = &h30
-
-ƒTƒ“ƒvƒ‹
-
-bin(0)
-
-bin(0)
-
+
+ƒƒCƒ‹ƒhƒJ[ƒh‚ðŠÜ‚Þƒtƒ@ƒCƒ‹‚Ü‚½‚̓tƒHƒ‹ƒ_‚Ì–¼‘O
+
+WildCard
+
+i“üo—́j ƒpƒX‚ª“ü‚Á‚½•¶Žš—ñ‚Ì”z—ñ
+
+in_out_PathArray
+
+WildCard ‚ÅŽw’è‚Å‚«‚郏ƒCƒ‹ƒhƒJ[ƒh‚́Aæ“ª‚É * ‚¾‚¯‚Å‚·B
+WildCard ‚É * ‚ª–³‚¢•¶Žš—ñ‚àŽw’è‚Å‚«‚Ü‚·B
+
(src)
-
-‚PƒoƒCƒg‚¸‚ƒAƒNƒZƒX‚µ‚Ü‚·B
- - - - - - - - - - -© -¥ -£ - - - -
-Property  BinaryArray::Size as integer
- -
-Property  BinaryArray::Length as integer
- -
-Property  BinaryArray::Count as integer
-
-ƒoƒCƒiƒŠ”z—ñ‚Ì—v‘f”B ƒoƒCƒgEƒTƒCƒY
-
-’l‚ðÝ’è‚·‚é‚ƁA”z—ñ‚̃TƒCƒY‚ª•Ï‰»‚µ‚Ü‚·B
-‘å‚«‚­‚È‚Á‚½•”•ª‚Ì’l‚́A0x00 ‚É‚È‚è‚Ü‚·B
-¬‚³‚­‚È‚Á‚½•”•ª‚͍폜‚³‚ê‚Ü‚·B
- -
-Dim  bin : Set bin = new BinaryArray
-bin.Load  "a.bin"
-bin.Size = bin.Size + 1
-bin.Save  "a_plus1.bin"
-
+
ƒTƒ“ƒvƒ‹
-
-Size
-
-Size
+ +
+arr = Array( "a.jpg", "b.bmp", "c.jpg" )
+RemoveWildcardMatchedArrayItems  arr, "*.jpg"
+Assert  IsSameArray( arr, Array( "b.bmp" ) )
- - - - + + + + - + -© -¥ -£ - - - -
-Sub  BinaryArray::ReDim_( UBound as integer )
-
-ƒoƒCƒiƒŠ”z—ñ‚Ì—v‘f”iƒoƒCƒgƒTƒCƒYj‚ð•ÏX‚µ‚Ü‚·B ReDim Preserve ‚Æ“¯‚¶‚Å‚·B
-
-yˆø”z
-
-UBound
-
-V‚µ‚¢”z—ñ‚̍őå—v‘f”ԍ†
-
-ReDim ‚Ì––”ö‚ɃAƒ“ƒ_[ƒXƒRƒA‚ª•t‚¢‚Ä‚¢‚Ü‚·B
-iReDim ‚Í—\–ñŒê‚Å‚ ‚邽‚߁Bj
-
+© +¥ +£ + + + +
+Sub  RemoveWildcard( WildCard as string, fnames as array of string )
+
(src)
- - - - - +
+”pŽ~—\’è‚Å‚·
+
+‘ã‚í‚è
+ + + + + + - + -© -¥ -£ - - - -
-Sub  BinaryArray::Load( Path as string )
-
-ƒtƒ@ƒCƒ‹‚Ì“à—e‚ðAƒoƒCƒiƒŠ”z—ñ‚É“ü—Í‚µ‚Ü‚·B
-
+© +¥ +£ + + +
+¨ T_Wildcard.vbs # [T_ReplaceFileNameWildcard]
+ +
+Assert  ReplaceFileNameWildcard( "Fo\File.txt", "Fo\*.txt", "Fo\*.ini" ) = "Fo\File.ini"
+ +
+Function  ReplaceFileNameWildcard( Path as string, FromStr as string, ToStr as string )
+
+ƒƒCƒ‹ƒhƒJ[ƒh‚ðŽg‚Á‚āAƒtƒ@ƒCƒ‹ƒpƒX‚ð•ÏX‚µ‚Ü‚·B
+
yˆø”z
-
+
Path
-
-ƒtƒ@ƒCƒ‹‚̃pƒX
-
-ƒoƒCƒiƒŠ”z—ñ‚ÉŒ³X“ü‚Á‚Ä‚¢‚½“à—e‚Í–³‚­‚È‚è‚Ü‚·B
- -
+
+FromStr
+
+ƒtƒ@ƒCƒ‹ƒpƒXiƒƒCƒ‹ƒhƒJ[ƒh‚ÍŽg‚¦‚Ü‚¹‚ñj
+
+•ÏX‘O‚Ì•¶Žš—ñBƒƒCƒ‹ƒhƒJ[ƒh‰Â”\B
+
+ToStr
+
+•ÏXŒã‚Ì•¶Žš—ñBƒƒCƒ‹ƒhƒJ[ƒh‰Â”\B "" ‰Â”\B
+
+ƒtƒ@ƒCƒ‹F
+ +
+vbslib.lib
+
+ƒTƒ“ƒvƒ‹
+
+•ÏXŒã‚̃tƒ@ƒCƒ‹ƒpƒXB Empty=Path ‚ª FromStr ‚Ƀ}ƒbƒ`‚µ‚È‚©‚Á‚½
+
+•Ô‚è’l
+
+(src)
+
+ƒeƒXƒg
+
+Path ‚ɐeƒtƒHƒ‹ƒ_[–¼‚ªŠÜ‚Ü‚ê‚é‚Æ‚«‚́AFromStr, ToStr ‚É‚àeƒtƒHƒ‹ƒ_[–¼‚ðŠÜ‚ß‚Ä‚­‚¾‚³‚¢B
+ +
+s= ReplaceFileNameWildcard( Fo\File.txt", "Fo\*.txt", "Fo\*.xml"  '// OK
+s= ReplaceFileNameWildcard( Fo\File.txt", "*.txt", "*.xml"        '// NG
+
+Path ‚ªAFromStr ‚Ƀ}ƒbƒ`‚µ‚È‚©‚Á‚½‚Æ‚«‚́AEmpty ‚ª•Ô‚è‚Ü‚·B
+
ŠÖ˜A
- - - - - - +
+¨ StrMatchKey ƒNƒ‰ƒX
+ +
+ƒƒCƒ‹ƒhƒJ[ƒh‚Ƀ}ƒbƒ`‚·‚é‚©‚Ç‚¤‚©
+ + + + + + - + -© -¥ -£ - - - -
-Sub  BinaryArray::Save( Path as string )
-
-ƒoƒCƒiƒŠ”z—ñ‚Ì“à—e‚ðAƒtƒ@ƒCƒ‹‚ɏo—Í‚µ‚Ü‚·B
-
+© +¥ +£ + + + +
+count = GetReadOnlyList( "C:\Folder", read_onlys, Empty )
+For Each step_path  In read_onlys.Keys
+    is_read_only = read_onlys( step_path )  '// step_path="FileA.txt", ...
+Next
+ +
+Function  GetReadOnlyList( TargetPath as string,
+    out_ReadOnlyDictionary as dictionary of boolean,  Opt as Empty ) as integer
+
+ƒtƒHƒ‹ƒ_[‚É‚ ‚é‚·‚ׂẴtƒ@ƒCƒ‹‚̃tƒ@ƒCƒ‹“Ç‚ÝŽæ‚è‘®«‚ðŽæ“¾‚µ‚Ü‚·B
+
yˆø”z
-
-Path
-
-ƒtƒ@ƒCƒ‹‚̃pƒX
- -
-  Dim  i
-  Dim  bin : Set bin = new BinaryArray
-  bin.ReDim_  &hFF
-  For i=0 To &hFF : bin(i) = i : Next
-  bin.Save  "a.bin"
-
+
+TargetPath
+
+out_ReadOnlyDictionary
+
+’²‚ׂéƒtƒHƒ‹ƒ_[A‚Ü‚½‚̓tƒ@ƒCƒ‹‚̃pƒX
+
+io—́j ƒtƒ@ƒCƒ‹“Ç‚ÝŽæ‚è‘®«‚ÌŽ«‘AƒL[‚Í‘Š‘΃pƒXAEmpty‰Â
+
+Opt
+
+Empty ‚ðŽw’肵‚Ä‚­‚¾‚³‚¢
+
+ƒeƒXƒg
+
ƒTƒ“ƒvƒ‹
- - - - - +
+ƒ\[ƒX
+
+“Ç‚ÝŽæ‚è‘®«‚ªƒIƒ“‚Å‚ ‚éƒtƒ@ƒCƒ‹‚̐”
+
+•Ô‚è’l
+
+¨ T_File.vbs
+
+T_GetReadOnlyList
+
+¨ ToolsLib.vbs
+
+ƒtƒHƒ‹ƒ_[Ž©‘Ì‚Ì “Ç‚ÝŽæ‚è‘®«‚͎擾‚Å‚«‚Ü‚¹‚ñB
+
+ƒTƒ“ƒvƒ‹
+ +
+count = GetReadOnlyList( "C:\Folder\FileA.txt", read_onlys, Empty )
+For Each step_path  In read_onlys.Keys
+    is_read_only = read_onlys( step_path )  '// step_path="."
+Next
+
+TargetPath ˆø”‚ɃtƒHƒ‹ƒ_[‚ðŽw’肵‚½ê‡
+
+TargetPath ˆø”‚Ƀtƒ@ƒCƒ‹‚ðŽw’肵‚½ê‡
+ + + + + - + -© -¥ -£ - - - -
-Function  BinaryArray::Read( Offset as integer, Length as integer ) as array of Byte
-
-ƒoƒCƒiƒŠ”z—ñ‚Ì“à—e‚̈ꕔ‚ðAByte ”z—ñ‚É‚µ‚Ä•Ô‚µ‚Ü‚·B
-
+© +¥ +£ + + +
+ƒTƒuEƒtƒHƒ‹ƒ_[EƒIƒuƒWƒFƒNƒg‚ð‚‘¬‚ÉŽ«‘‚É—ñ‹“‚µ‚Ü‚·B ƒTƒuƒtƒHƒ‹ƒ_‚̃TƒuƒtƒHƒ‹ƒ_‚à—ñ‹“‚µ‚Ü‚·B
+
yˆø”z
-
-Offset
-
-”z—ñ‚Ì’†‚Å’Šo‚·‚é•”•ª‚̐擪‚̈ʒuB ”z—ñ‚̐擪‚©‚ç = 0
-
-”z—ñ‚Ì’†‚Å’Šo‚·‚é•”•ª‚Ì’·‚³iƒoƒCƒgjB -1 = ÅŒã‚Ü‚Å
-
-Length
-
-Offset = 0 ‚Ü‚½‚Í Empty ‚É‚·‚é‚ƁA”z—ñ‚̐擪‚©‚ç‚É‚È‚è‚Ü‚·B
-Length = -1 ‚Ü‚½‚Í Empty ‚É‚·‚é‚ƁA”z—ñ‚̍Ōã‚Ü‚Å‚É‚È‚è‚Ü‚·B
-
-•Ô‚è’l
-
-”z—ñ‚Ì“à—e‚̈ꕔ‚𒊏o‚µ‚½ Byte ”z—ñ
- - -
-•Ô‚è’l‚ɁA•¶Žš—ñŠÖ” LeftB, MidB, RightB, LenB, AscB, ChrB ‚ðŽg‚¤‚±‚Æ‚ª‚Å‚«‚Ü‚·B
-•Ô‚è’l‚ɑ΂µ‚Ä + ‰‰ŽZŽq‚ÍŽg‚¦‚Ü‚¹‚ñ‚ªAMidB( ByteArray, 1 ) ‚È‚Ç‚Å String Œ^‚É•ÏŠ·
-‚·‚ê‚΁A+ ‰‰ŽZŽq‚ªŽg‚¦‚Ü‚·B
-
-ƒTƒ“ƒvƒ‹
- -
-  binary = bin.Read( &h10, &h28 )
-  echo  AscB( MidB( binary, 3, 1 ) )
- -
+
+Opt
+
+FolderPath
+
+Empty ‚ðŽw’肵‚Ä‚­‚¾‚³‚¢
+
+’²‚ׂéƒtƒHƒ‹ƒ_‚̃pƒXB ‚±‚̃tƒHƒ‹ƒ_‚Ì’†‚©‚ç—ñ‹“‚µ‚Ü‚·
+ +
+Sub  EnumFolderObjectDic( FolderPath as string, Opt as Empty, out_Folders as dictinoary of Folder )
+
+io—́j ƒTƒuƒtƒHƒ‹ƒ_‚ðŠÜ‚Þ Folder ƒIƒuƒWƒFƒNƒg‚ÌŽ«‘
+
+out_Folders
+
+out_Folders ‚ɂ́AFolderPath ‚Ì Folder ƒIƒuƒWƒFƒNƒg‚ƁAFolderPath ‚̃TƒuƒtƒHƒ‹ƒ_[‚Ì Folder ƒIƒuƒWƒFƒNƒg
+‚Ì—¼•û‚ªŠÜ‚Ü‚ê‚Ü‚·B FolderPath ‚É‘Š“–‚·‚éƒL[‚Ì’l‚Í "." ‚Å‚·B
+
+out_Folders ‚ÍŽ«‘Œ^‚Å‚·B ƒL[‚́AƒtƒHƒ‹ƒ_[‚Ö‚Ì‘Š‘΃pƒX‚Å‚·B ‚»‚̊ƒtƒHƒ‹ƒ_[‚́AFolderPath
+‚Å‚·B ƒAƒCƒeƒ€‚́AFolder ƒIƒuƒWƒFƒNƒg‚Å‚·B
+ +
+  EnumFolderObjectDic  "C:\FolderA", Empty, folders1  '// [out] folders1
+  EnumFolderObjectDic  "C:\FolderB", Empty, folders2  '// [out] folders2
+  For Each step_path  In folders1.Keys
+    If not folders2.Exists( step_path ) Then
+      mkdir  "C:\FolderB\"+ step_path
+      For Each file  In folders1.Item( step_path ).Files
+        copy  "C:\FolderA\"+ step_path + file.Name,  "C:\FolderB\"+ step_path
+      Next
+    End If
+  Next
+
ƒTƒ“ƒvƒ‹
-
+
(src)
-
+
+EnumFolderObjectDic
+
+EnumFolderObjectDic
+ +
ŠÖ˜A
- - - - - - - - + + + +
+o—Í—á
+ +
+"."
+"fe"
+"fo1"
+"fo1\fo1"
+"fo1\fo11.ex"
+"fo1\t1"
+"fo2"
+
+ƒeƒXƒg
+
+¨ T_Wildcard.vbs # [T_EnumFolderObjectDic]
+ + + + + + + - + -© -¥ -£ - - - -
-Sub  BinaryArray::Write( Offset as integer, Length as integer, ByteArray as variant )
-
-ƒoƒCƒiƒŠ”z—ñ‚Ì“à—e‚̈ꕔ‚ðA•ÏX‚µ‚Ü‚·B
-
+© +¥ +£ + + +
+(src)
+
+ƒtƒHƒ‹ƒ_‚Ì’†‚̃tƒ@ƒCƒ‹EƒIƒuƒWƒFƒNƒg‚ð‚‘¬‚ÉŽ«‘‚É—ñ‹“‚µ‚Ü‚·B
+
yˆø”z
-
-ByteArray
-
-•ÏX“à—e‚ªŠi”[‚³‚ꂽ•¶Žš—ñA‚Ü‚½‚Í”z—ñA‚Ü‚½‚͐”’l
-
-Length
-
-”z—ñ‚Ì’†‚ŕύX‚·‚é•”•ª‚Ì’·‚³iƒoƒCƒgjB -1 = ByteArray ‘S‘Ì
-
-”z—ñ‚Ì’†‚ŕύX‚·‚é•”•ª‚̐擪‚̈ʒuB ”z—ñ‚̐擪‚©‚ç = 0
-
-Offset
-
-Offset = 0 ‚Ü‚½‚Í Empty ‚É‚·‚é‚ƁA”z—ñ‚̐擪‚©‚ç‚É‚È‚è‚Ü‚·B
-Length = -1 ‚Ü‚½‚Í Empty ‚É‚·‚é‚ƁA”z—ñ‚̍Ōã‚Ü‚Å‚É‚È‚è‚Ü‚·B
-
-ƒTƒ“ƒvƒ‹
- -
-  bin.Write  0, Empty, Array( &h42, &h4D )
- -
+
+out_Files
+
+FolderOrPath
+
+io—́j ƒtƒ@ƒCƒ‹‚̃IƒuƒWƒFƒNƒg‚ÌŽ«‘
+
+’²‚ׂéƒtƒHƒ‹ƒ_‚̃pƒXB ‚Ü‚½‚́AFolder ƒIƒuƒWƒFƒNƒgi‚‘¬j
+ +
+Sub  EnumFileObjectDic( FolderOrPath as string or Folder, out_Files as dictinoary of File
+
+out_Files ‚ÍŽ«‘Œ^‚Å‚·B ƒL[‚́Aƒtƒ@ƒCƒ‹–¼‚Å‚·B ƒAƒCƒeƒ€‚́AFile ƒIƒuƒWƒFƒNƒg‚Å‚·B
+ƒTƒuEƒtƒHƒ‹ƒ_[‚É‚ ‚éƒtƒ@ƒCƒ‹‚Í—ñ‹“‚µ‚Ü‚¹‚ñB
+ +
+  Dim  files1, files2, file_name
+
+  EnumFileObjectDic  "C:\FolderA", files1  '// [out] files1
+  EnumFileObjectDic  "C:\FolderB", files2  '// [out] files2
+  For Each file_name  In files1.Keys
+    If not files2.Exists( file_name ) Then
+      copy  "C:\FolderA\"+ file_name,  "C:\FolderB"
+    End If
+  Next
+
ƒTƒ“ƒvƒ‹
- -
-  bin.Write  0, 2, ChrB( &h42 ) + ChrB( &h4D )
- -
-  bin.Write  1, 1, &h4D
- -
+
+EnumFileObjectDic
+
+EnumFileObjectDic
+ +
ŠÖ˜A
-
-(src)
- - + - - - - + + + + - + -© -¥ -£ - - - -
-Function  BinaryArray::ReadStruct( Offset as integer, out_Dic as dictionary,
-                                   FormatArray as integer ) as integer
-
-ƒoƒCƒiƒŠ”z—ñ‚Ì“à—e‚̈ꕔ‚ðƒŠ[ƒh‚µ‚½“à—e‚ðA\‘¢‰»‚µ‚½Ž«‘‚ðŽæ“¾‚µ‚Ü‚·B
-
+© +¥ +£ + + + +
+Sub  EnumFolderObject( FolderPath as string, out_Folders as array of Folder )
+
+ƒTƒuƒtƒHƒ‹ƒ_‚̃IƒuƒWƒFƒNƒg‚ð‚‘¬‚É—ñ‹“‚µ‚Ü‚·B ƒTƒuƒtƒHƒ‹ƒ_‚̃TƒuƒtƒHƒ‹ƒ_‚à—ñ‹“‚µ‚Ü‚·B
+
yˆø”z
-
-Offset
-
-”z—ñ‚Ì’†‚Å’Šo‚·‚é•”•ª‚̐擪‚̈ʒuB ”z—ñ‚̐擪‚©‚ç = 0
-
-io—́j ”’l‚ÌŽ«‘B ƒL[‚Í FormatArray ‚ÉŽw’肵‚½‚à‚́B
-
-out_Dic
-
-•Ô‚è’l
-
-’Šo‚µ‚½•”•ª‚̃oƒCƒiƒŠ‚Ì‘å‚«‚³iƒoƒCƒgj
-
-ƒTƒ“ƒvƒ‹
- -
-  Dim  bin, out, size
-  bin.Write  &h10, Empty, Array( &h12, &h34, &h56, &h78, &h9A, &hBC, &hDE )
-  size = bin.ReadStruct( &h10, out, Array( "a", vbByte,  "b", vbInteger+vbArray, 3 ) )
-  '// out("a")    = &h12
-  '// out("b")(0) = &h5634
-  '// out("b")(1) = &h9A78
-  '// out("b")(2) = &hDEBC
-
-ƒoƒCƒiƒŠ”z—ñ‚©‚ç’Šo‚·‚é•”•ª‚ÌŒ^‚̏W‡ i‰º‹Lj
-
-FormatArray
-
+
+out_Folders
+
+FolderPath
+
+io—́j ƒTƒuƒtƒHƒ‹ƒ_‚̃IƒuƒWƒFƒNƒg‚Ì”z—ñ
+
+’²‚ׂéƒtƒHƒ‹ƒ_‚̃pƒXB ‚±‚̃tƒHƒ‹ƒ_‚Ì’†‚©‚ç—ñ‹“‚µ‚Ü‚·
+ +
(src)
-
-FormatArray ˆø”
-
-out_Dic iŽ«‘Œ^j ‚ÉŠi”[‚·‚éƒL[‚Ì–¼‘O‚ƁA’l‚ÌŒ^‚ðA‡”Ô‚É•À‚ׂ½”z—ñ‚ðŽw’肵‚Ü‚·B
-vbInteger ‚È‚Ç‚ÌŒ^‚É {vbArray ‚µ‚½‚Æ‚«‚́A”z—ñ‚ðƒŠ[ƒh‚µ‚Ü‚·B ‚±‚Ì‚Æ‚«AX‚É”z—ñ‚Ì
-—v‘f”‚ðŽw’肵‚Ä‚­‚¾‚³‚¢B —v‘f”‚ð -1 ‚É‚·‚é‚ƁAƒtƒ@ƒCƒ‹‚̍Ōã‚܂ŃŠ[ƒh‚µ‚Ü‚·B
-
-vbByte
-
-1ƒoƒCƒgA•„†‚È‚µA0`255
-
-vbInteger
-
-2ƒoƒCƒgA•„†‚ ‚èA-32768`32767, &h0000`&hFFFF
-
-vbInteger + c.Unsigned
-
-2ƒoƒCƒgA•„†‚È‚µALongŒ^A0`65535
-
-vbLong
-
-4ƒoƒCƒgA•„†‚ ‚èA-2147483648`2147483647A&h10000`&hFFFFFFFF
-
-* + vbArray
-
-”z—ñB vbByte ‚È‚Ç‚ÌŒ^‚É vbArray ‚ðƒvƒ‰ƒX‚µ‚Ä‚­‚¾‚³‚¢B
-FormatArray ‚ɂ́A”z—ñ‚Ì—v‘f”‚àŽw’肵‚Ä‚­‚¾‚³‚¢B
-—v‘f”‚ð -1 ‚É‚·‚é‚ƁAƒtƒ@ƒCƒ‹‚̍Ōã‚܂ŃŠ[ƒh‚µ‚Ü‚·B
-
-&h10  out
-
-"a", vbByte,  "b", vbInteger+vbArray, 3
-
+ +
+  Set fname_key = new StrMatchKey
+  fname_key.Keyword = LCase( "*.txt" )
+
+  EnumFolderObject  "C:\FolderA", folders  '// [out] folders
+  For Each fo  In folders  '// fo as Folder
+    For Each fi  In fo.Files '// fo as File
+      If fname_key.IsMatch( fi.Name ) Then
+        echo  fi.DateLastModified
+      End If
+    Next
+  Next
+
ŠÖ˜A
- - - - - - - + +
+out_Folders ‚ɂ́AFolderPath ‚Ì Folder ƒIƒuƒWƒFƒNƒg‚ƁAFolderPath ‚̃TƒuƒtƒHƒ‹ƒ_[‚Ì Folder
+ƒIƒuƒWƒFƒNƒg‚Ì—¼•û‚ªŠÜ‚Ü‚ê‚Ü‚·B
+
+ƒTƒ“ƒvƒ‹
+
+EnumFolderObject
+ +
+ƒTƒuEƒtƒHƒ‹ƒ_[‚ð—ñ‹“‚µ‚È‚¢ê‡
+ +
+«”\
+
+ƒTƒ“ƒvƒ‹
+ +
+    EnumFolderObject  "C:\FolderA", folders  '// [out] folders
+    For Each folder  In folders  '// folder as Folder Object
+        For Each file  In folder.Files '// file as File Object
+            echo  file.Path
+        Next
+    Next
+
+EnumFolderObject
+ + + + + + + + + + - + -© -¥ -£ - - - -
-Sub  BinaryArray::WriteStruct( Offset as integer, FormatAndDataArray as array )
-
-\‘¢‰»‚µ‚½”z—ñ‚ðŽg‚Á‚āAƒoƒCƒiƒŠ”z—ñ‚Ì“à—e‚̈ꕔ‚ɁA”’l‚̏W‡‚ðƒ‰ƒCƒg‚µ‚Ü‚·B
-
+© +¥ +£ + + + +
+Sub  GetSubFolders( folders as array of string, path as string )
+
+ƒTƒu ƒtƒHƒ‹ƒ_[‚̃pƒX‚ð—ñ‹“‚µ‚Ü‚·B ƒTƒu ƒtƒHƒ‹ƒ_[‚̃Tƒu ƒtƒHƒ‹ƒ_[‚à—ñ‹“‚µ‚Ü‚·B
+
yˆø”z
-
-Offset
-
-ƒoƒCƒiƒŠ”z—ñ‚Ì’†‚ŕύX‚·‚é”͈͂̐擪ˆÊ’uB ”z—ñ‚̐擪‚©‚ç = 0
-
-ƒoƒCƒiƒŠ”z—ñ‚Öƒ‰ƒCƒg‚·‚é•”•ª‚ÌŒ^‚ƃ‰ƒCƒg‚·‚é’l‚̏W‡ i‰º‹Lj
-
-FormatAndDataArray
-
-ƒTƒ“ƒvƒ‹
- -
-    bin.WriteStruct  &h40, Array( vbByte, &h12, vbInteger, Array( &h5634, &h9A78, &hDEBC ) )
-    '// bin = 0x0040 : 12 34 56 78 9A BC DE
-
+
+folders
+
+path
+
+io—́j ƒTƒu ƒtƒHƒ‹ƒ_[‚̃pƒX‚Ì”z—ñ
+
+’²‚ׂéƒtƒHƒ‹ƒ_[‚̃pƒXB ‚±‚̃tƒHƒ‹ƒ_[‚Ì’†‚©‚ç—ñ‹“‚µ‚Ü‚·
+ +
ŠÖ˜A
-
+
(src)
-
-FormatAndDataArray ˆø”
-
-u’l‚ÌŒ^v —v‘f‚ƁAu’lA‚Ü‚½‚́A’l‚ð•À‚ׂ½”z—ñv —v‘f‚ðŒJ‚è•Ô‚·”z—ñ‚ðŽw’肵‚Ü‚·B
-
-vbByte
-
-1ƒoƒCƒgA•„†‚È‚µA0`255
-
-vbInteger
-
-2ƒoƒCƒgA•„†‚ ‚èA-32768`32767, &h0000`&hFFFF
-
-vbInteger + c.Unsigned
-
-2ƒoƒCƒgA•„†‚È‚µALongŒ^A0`65535
-
-vbLong
-
-4ƒoƒCƒgA•„†‚ ‚èA-2147483648`2147483647A&h10000`&hFFFFFFFF
- - - -
-ƒoƒCƒiƒŠ”z—ñ bin ‚Ì 0x40 ‚̈ʒu‚ɁAvbByteŒ^i8ƒrƒbƒg®”Œ^j‚Ì 0x12 ‚ƁAvbIntegerŒ^i16ƒrƒbƒg
-®”Œ^j‚Ì 0x5634, 0x9A78, 0xDEBC ‚ðŠi”[‚µ‚Ü‚·B
-
-ƒoƒCƒiƒŠ”z—ñ bin ‚Ì 0 ‚̈ʒu‚ɁAvbByteŒ^i8ƒrƒbƒg®”Œ^j‚Ì 0x12A0x34A0x56A0x78 Ši”[‚µ‚Ü‚·B
- -
-    bin.WriteStruct  0, Array( vbByte, Array( &h12, &h34, &h56, &h78 ) )
-    '// bin = 0x0000 : 12 34 56 78
- - - - - + + + + - + -© -¥ -£ - - - -
-Sub  BinaryArray::WriteFromBinaryArray( WriteOffset as integer,
-  ReadBinaryArray as BinaryArray, ReadOffset as integer, Size as integer )
-
-ƒoƒCƒiƒŠ”z—ñ‚̈ꕔ‚ð•Ê‚̃oƒCƒiƒŠ”z—ñ‚ɁA‚‘¬‚ɃRƒs[‚µ‚Ü‚·B
-
-yˆø”z
-
-Me
-
-ƒRƒs[æ‚Æ‚È‚éƒoƒCƒiƒŠ”z—ñ
-
-Me ‚Ì’†‚ŕύX‚·‚é”͈͂̐擪ˆÊ’uB ”z—ñ‚̐擪‚©‚ç = 0
-
-WriteOffset
-
-(src)
-
-ReadBinaryArray
-
-ReadOffset
-
-Size
-
-ƒRƒs[Œ³‚Æ‚È‚éƒoƒCƒiƒŠ”z—ñ
-
-ReadBinaryArray ‚Ì’†‚͈̔͂̐擪ˆÊ’uB ”z—ñ‚̐擪‚©‚ç = 0
-
-ƒRƒs[‚·‚éƒTƒCƒYiƒoƒCƒgj, -1=ÅŒã‚Ü‚Å
-
-ReadBinaryArray ‚̃TƒCƒY‚æ‚è‘å‚«‚È’l‚ð Size ˆø”‚ÉŽw’肵‚½‚Æ‚«‚́AÅŒã‚܂ŃRƒs[‚µ‚Ü‚·B
- - - - - +© +¥ +£ + + + +
+s“ª‚Ì‹ó”’•¶Žš‚ðƒ^ƒu•¶Žš‚É•ÏŠ·‚µ‚Ü‚·
+
+ƒeƒXƒg
+
+¨ T_ChangeTabSpace ƒtƒHƒ‹ƒ_
+ + + +
+s“ª‚̃^ƒu•¶Žš‚ð‹ó”’•¶Žš‚É•ÏŠ·‚µ‚Ü‚·
+
+s“ªˆÈŠO‚Ì‹ó”’•¶Žš‚ðƒ^ƒu•¶Žš‚É•ÏŠ·‚µ‚Ü‚·
+
+s“ªˆÈŠO‚̃^ƒu•¶Žš‚ð‹ó”’•¶Žš‚É•ÏŠ·‚µ‚Ü‚·
+ + + + +
- + -© -¥ -£ - - - -
-Function  BinaryArray::Compare( ThanBinary as BinaryArray )
-
-ƒoƒCƒiƒŠ”z—ñ‚ð”äŠr‚µ‚Ü‚·B
-
+© +¥ +£ + + + +
+Sub  ChangeHeadSpaceToTab( ReadStream as TextStream, WriteStream as TextStream,
+                           TabSize as integer )
+
+s“ª‚Ì‹ó”’•¶Žš‚ðƒ^ƒu•¶Žš‚É•ÏŠ·‚µ‚Ü‚·B
+
yˆø”z
-
-ThanBinary
-
-”äŠr‘Ώۂ̃oƒCƒiƒŠ”z—ñ
-
-ƒeƒXƒg
-
-¨ T_Binary.vbs
-
-¨ System.vbs
-
-ƒ\[ƒX
-
-•Ô‚è’l
-
-ˆê’v=0AStrComp ‚Æ“¯‚¶
- - - - - +
+ReadStream
+
+WriteStream
+
+•ÏŠ·‘O‚̃eƒLƒXƒgEƒtƒ@ƒCƒ‹EƒXƒgƒŠ[ƒ€
+
+•ÏŠ·Œã‚̃eƒLƒXƒgEƒtƒ@ƒCƒ‹EƒXƒgƒŠ[ƒ€
+
+TabSize
+
+‚P‚‚̃^ƒu•¶Žš‚ ‚½‚è‚Ì‹ó”’•¶Žš‚̐”
+
+ToolsLib.vbs (src)
+ + + + + + + - + -© -¥ -£ - - - -
-Sub  BinaryArray::SwapEndian( Offset as integer, Size as integer, SwapUnitSize as integer )
-
-ƒoƒCƒiƒŠ”z—ñ‚̈ꕔ‚̃Gƒ“ƒfƒBƒAƒ“‚ð‹t‚É‚µ‚Ü‚·B
-
+© +¥ +£ + + + +
+Sub  ChangeHeadTabToSpace( ReadStream as TextStream, WriteStream as TextStream,
+                           TabSize as integer )
+
+s“ª‚̃^ƒu•¶Žš‚ð‹ó”’•¶Žš‚É•ÏŠ·‚µ‚Ü‚·B
+
yˆø”z
-
-Offset
-
-ƒGƒ“ƒfƒBƒAƒ“‚ð‹t‚É‚·‚é”͈͂̐擪ƒIƒtƒZƒbƒg
-
-ƒGƒ“ƒfƒBƒAƒ“‚ð‹t‚É‚·‚é”͈͂̃TƒCƒYiƒoƒCƒgj
-
-Size
-
+
+ReadStream
+
+WriteStream
+
+•ÏŠ·‘O‚̃eƒLƒXƒgEƒtƒ@ƒCƒ‹EƒXƒgƒŠ[ƒ€
+
+•ÏŠ·Œã‚̃eƒLƒXƒgEƒtƒ@ƒCƒ‹EƒXƒgƒŠ[ƒ€
+
+TabSize
+
+‚P‚‚̃^ƒu•¶Žš‚ ‚½‚è‚Ì‹ó”’•¶Žš‚̐”
+
+ToolsLib.vbs (src)
+ + +
ƒTƒ“ƒvƒ‹
- -
-  '// bin = 12 34 56 78 9A BC DE
-  bin.SwapEndian  &h2, &h4, 2
-  '// bin = 12 56 34 9A 78 BC DE
-
-ƒoƒCƒiƒŠ”z—ñ bin ‚Ì 0x2 ‚̈ʒu‚©‚çŽn‚Ü‚é 4ƒoƒCƒg‚͈̔͂ðA2ƒoƒCƒg’PˆÊi2ƒoƒCƒg®”j‚Å‹t‚É‚µ‚Ü‚·B
-
-SwapUnitSize
-
-‹t‚É‚·‚é’PˆÊ
-
-ƒeƒXƒg
-
-¨ T_Binary.vbs
-
-¨ System.vbs
-
-ƒ\[ƒX
+ +
+Set rep = StartReplace( "in\sample.c", "out\sample.c", True )
+ChangeHeadTabToSpace  rep.r,  rep.w,  4
+rep.Finish
- - - - + + + + - + -© -¥ -£ - - - -
-Sub  BinaryArray::ToEmpty()
-
-”z—ñ‚ð‹ó‚É‚µ‚Ü‚·B ”z—ñ—v‘f”‚Í 0 ‚É‚È‚è‚Ü‚·B
+© +¥ +£ + + + +
+Sub  ChangeMiddleSpaceToTab( ReadStream as TextStream, WriteStream as TextStream,
+                             TabSize as integer )
+
+s“ªˆÈŠO‚Ì‹ó”’•¶Žš‚ðƒ^ƒu•¶Žš‚É•ÏŠ·‚µ‚Ü‚·B
+
+yˆø”z
+
+ReadStream
+
+WriteStream
+
+•ÏŠ·‘O‚̃eƒLƒXƒgEƒtƒ@ƒCƒ‹EƒXƒgƒŠ[ƒ€
+
+•ÏŠ·Œã‚̃eƒLƒXƒgEƒtƒ@ƒCƒ‹EƒXƒgƒŠ[ƒ€
+
+TabSize
+
+‚P‚‚̃^ƒu•¶Žš‚ ‚½‚è‚Ì‹ó”’•¶Žš‚̐”
+
+ToolsLib.vbs (src)
+ + + + + + + - - - - +
+ + + +© +¥ +£ + + + +
+Sub  ChangeMiddleTabToSpace( ReadStream as TextStream, WriteStream as TextStream,
+                             TabSize as integer )
+
+s“ªˆÈŠO‚̃^ƒu•¶Žš‚ð‹ó”’•¶Žš‚É•ÏŠ·‚µ‚Ü‚·B
+
+yˆø”z
+
+ReadStream
+
+WriteStream
+
+•ÏŠ·‘O‚̃eƒLƒXƒgEƒtƒ@ƒCƒ‹EƒXƒgƒŠ[ƒ€
+
+•ÏŠ·Œã‚̃eƒLƒXƒgEƒtƒ@ƒCƒ‹EƒXƒgƒŠ[ƒ€
+
+TabSize
+
+‚P‚‚̃^ƒu•¶Žš‚ ‚½‚è‚Ì‹ó”’•¶Žš‚̐”
+
+ToolsLib.vbs (src)
+ + + + + + +
- + -© -¥ -£ - - - - - - - - - +© +¥ +£ + + + +
+Sub  SetBreakByFName( FName as string )
+
+Žw’肵‚½–¼‘O‚̃tƒ@ƒCƒ‹‚ðƒ‰ƒCƒg‚·‚é‚Æ‚«‚ɃuƒŒ[ƒN‚³‚¹‚Ü‚·B
+
+yˆø”z
+
+FName
+
+ƒuƒŒ[ƒN‚·‚éƒtƒ@ƒCƒ‹–¼iƒtƒHƒ‹ƒ_ƒpƒXŽw’è•s‰Âj
+
+g_debug † 1 ‚Ì‚Æ‚«‚¾‚¯ƒuƒŒ[ƒN‚µ‚Ü‚·B
+vbslib ‚̊֐”icopyAdelAOpenForWrite ‚Ȃǁj‚Å‚Í‚È‚¢ig_fs.CopyFile ‚ȂǁjŠÖ”‚É‚æ‚Á‚Ä
+ƒ‰ƒCƒg‚µ‚½‚Æ‚«‚̓uƒŒ[ƒN‚µ‚Ü‚¹‚ñB
+
+(src)
+
+¨ T_Debug ƒtƒHƒ‹ƒ_
+
+ƒeƒXƒg
+
+ƒTƒ“ƒvƒ‹F
+ +
+SetBreakByFName  "Out.txt"  '//[TODO]
+ +
+ŠÖ˜A
- - - - + + + +
- + -© -¥ -£ - - - - - - - - -
-<BinaryArray size="6">
-FF FE 6F 30 80 30
-</BinaryArray>
-
-o—Í—áF
-
+© +¥ +£ + + +
(src)
- - - - - + +
+Function  IsWriteAccessDenied( ErrNumber as integer, Path as string,
+                            FolderOrFile as bitfield, in_out_nRetry as integer )
+
+•‰‰×‚ª‚‚¢‚Æ‚«‚É”­¶‚·‚鏑‚«ž‚Ý‹‘”ÛƒGƒ‰[‚ɑΏˆ‚µ‚Ü‚·B
+
+yˆø”z
+
+ErrNumber
+
+ƒ`ƒFƒbƒN‚·‚éƒGƒ‰[ƒR[ƒh
+
+•Ô‚è’l
+
+‘‚«ž‚Ý‹‘”ÛƒGƒ‰[‚ª”­¶‚µ‚½‚©‚Ç‚¤‚©
+ +
+<WARNING msg="‘‚«ž‚Ý‚Å‚«‚Ü‚¹‚ñB" msg2="ÄŽŽs‚µ‚Ä‚¢‚Ü‚·" retry_count="1"
+ path="C:\folder\file.txt"/>
+
+VBScript (Windows) ‚ł́Aƒtƒ@ƒCƒ‹‚ªƒƒbƒN‚³‚ꂽ‚Æ‚«‚¾‚¯‚Å‚È‚­AƒfƒBƒXƒNEƒAƒNƒZƒX‚Ì•‰‰×‚ª
+‚‚­‚È‚é‚ƁA‘‚«ž‚Ý‹‘”ÛƒGƒ‰[(ƒGƒ‰[ƒR[ƒh 70)‚ª”­¶‚µ‚Ü‚·B ‚±‚̃Gƒ‰[‚ɑΏˆ‚µ‚È‚¢‚ƁA
+ƒXƒNƒŠƒvƒg‚É‚æ‚鎩“®ŽÀs‚ª’†’f‚³‚ê‚Ä‚µ‚Ü‚¢‚Ü‚·B IsWriteAccessDenied ‚́A‘‚«ž‚Ý‹‘”Û
+ƒGƒ‰[‚É‚æ‚Á‚ăXƒNƒŠƒvƒg‚ª’†’f‚³‚ê‚È‚¢‚悤‚ɁAÄŽŽs‚·‚éƒXƒNƒŠƒvƒg‚Ì‹Lq‚ð•â•‚µ‚Ü‚·B
+
+ƒRƒ}ƒ“ƒhƒvƒƒ“ƒvƒg(cscript.exe)‚Å“®‚­ vbslib ‚ŁA‘‚«ž‚Ý‹‘”ÛƒGƒ‰[‚ª”­¶‚µ‚½‚çA
+ŽŸ‚ÌŒx‚ð•\Ž¦‚µ‚āAƒOƒ[ƒoƒ‹•Ï” g_FileSystemRetryMSec ‚ÉŽw’肵‚½ŽžŠÔiƒ~ƒŠ•bj
+i’ʏí4•bj‚¾‚¯ Sleep ‚µ‚Ü‚·B ƒOƒ[ƒoƒ‹•Ï” g_FileSystemMaxRetryMSec ‚ÉŽw’肵‚½
+ŽžŠÔiƒ~ƒŠ•bji’ʏí60•bj‚¾‚¯ÄŽŽs‚µ‚½‚çA‘‚«ž‚Ý‹‘”ÛƒGƒ‰[‚𔭐¶‚³‚¹‚Ü‚·B
+ÄŽŽs‚́AIsWriteAccessDenied ‚Ì“à•”‚ł͍s‚¢‚Ü‚¹‚ñB ŽQlF‰º‹LƒTƒ“ƒvƒ‹B
+
+ƒEƒBƒ“ƒhƒE(wscript.exe)‚Å“®‚­ vbslib ‚ŁA‘‚«ž‚Ý‹‘”ÛƒGƒ‰[‚ª”­¶‚µ‚½‚çAŽŸ‚ÌŒx‚ð
+•\Ž¦‚µ‚Ä [ ÄŽŽs ] ‚© [ ƒLƒƒƒ“ƒZƒ‹ ] ‚ð‘I‚ÔƒƒbƒZ[ƒWƒ{ƒbƒNƒX‚ª•\Ž¦‚³‚ê‚Ü‚·B
+ƒ†[ƒU[‚ª“ü—Í‚·‚é‚Ü‚ÅŽ©“®ŽÀs‚͈ꎞ’âŽ~‚µ‚Ü‚·B
+ +
+‘‚«ž‚Ý‚Å‚«‚Ü‚¹‚ñB
+  [ÄŽŽs] [ƒLƒƒƒ“ƒZƒ‹]
+
+ƒAƒNƒZƒX‚µ‚½ƒpƒX
+
+i“üo—́j ÄŽŽs‰ñ”
+
+Path
+
+in_out_nRetry
+ +
+  Dim  f, path, n_retry, en, ed
+
+  n_retry = 0
+  Do
+    On Error Resume Next
+      Set f = g_fs.CreateTextFile( path )
+    en = Err.Number : ed = Err.Description : On Error GoTo 0
+    If not IsWriteAccessDenied( en, path, F_File, n_retry ) Then  Exit Do
+  Loop
+  If en <> 0 Then  Err.Raise en,,ed
+
+ƒTƒ“ƒvƒ‹F ‚•‰‰×ó‘Ô‚Å‚àŽg‚¦‚é CreateTextFile
+
+path
+
+path
+
+ÄŽŽsƒ†[ƒU[ƒCƒ“ƒ^[ƒtƒF[ƒX
+
+¨ E_WriteAccessDenied
+
+ŽQl
+
+FolderOrFile
+
+F_File ‚Ü‚½‚Í F_Folder ‚Ü‚½‚Í F_File or F_Folder
+
+ƒeƒXƒg
+
+¨ T_Replace_target.vbs # T_FromLock
+
+¨ T_Copy.vbs # T_CopyLocked
+
+¨ T_File.vbs # T_OverwriteFolderFile
+
+ƒL[ƒ[ƒhF
+ + +
+‘‚«ž‚Ý‹‘”ÛƒGƒ‰[(ƒGƒ‰[ƒR[ƒh 70)‚ª”­¶‚·‚é‰Â”\«‚ª‚ ‚é‚à‚Ì‚Ì—á
+
+g_fs.CopyFile, g_fs.CopyFolder, g_fs.MoveFile, g_fs.MoveFolder
+g_fs.DeleteFolder, g_fs.CreateFolder
+g_fs.CreateTextFile, g_fs.OpenTextFile
+File::Name ‚Ö‚Ì‘ã“ü‚É‚æ‚é‰ü–¼, ADODBStream::SaveToFile
+
+vbslib ‚ª’ñ‹Ÿ‚·‚éƒtƒ@ƒCƒ‹‘€ì‹@”\‚́A‘‚«ž‚Ý‹‘”ÛƒGƒ‰[‚ª”­¶‚µ‚È‚¢‚悤‚ɑΏˆ‚³‚ê‚Ä
+‚¢‚邽‚߁AIsWriteAccessDenied ‚ðŒÄ‚яo‚·•K—v‚Í‚ ‚è‚Ü‚¹‚ñB
+ +
+¨ T_File_w_Manually.vbs
+
+¨ T_File_c_Manually.vbs
+ + + + + - + -© -¥ -£ - - - - - - - -
-echo  ReadBinaryFile( "Sample.zip" ).MD5
-
-ƒoƒCƒiƒŠ[Eƒf[ƒ^i”z—ñ‚Ì‘S‘́j‚ɑ΂·‚é ƒnƒbƒVƒ…’lB
-
+© +¥ +£ + + +
+ƒoƒCƒiƒŠ[Eƒtƒ@ƒCƒ‹‚̃f[ƒ^‚ðˆµ‚¢‚â‚·‚­‚·‚éƒNƒ‰ƒX‚Å‚·B
+ƒtƒ@ƒCƒ‹‚ð”z—ñ‚̂悤‚Ɉµ‚¤‚±‚Æ‚ª‚Å‚«‚Ü‚·B
+
+ŠÖ˜A
+ + +
+    Set bin = new BinaryArray
+    bin.Size = 4
+    bin(0) = &hFF  '// low  byte of BOM
+    bin(1) = &hFE  '// high byte of BOM
+    bin(2) = &h80  '// low  byte of hiragana mu
+    bin(3) = &h30  '// high byte of hiragana mu
+    bin.Save  "unicode_sample.txt"
+
+ƒTƒ“ƒvƒ‹
+
+ƒoƒCƒiƒŠ[ƒtƒ@ƒCƒ‹‚Öƒ‰ƒCƒgB Unicode Œ`Ž®‚̃eƒLƒXƒgƒtƒ@ƒCƒ‹ u‚Þ(=0x3080)v ‚ðì‚é
+ +
+    Set bin = ReadBinaryFile( "unicode_sample.txt" )
+    If bin(0) = &hFF  and  bin(1) = &hFE Then
+        echo  "This is unicode file."
+    End If
+
+ƒoƒCƒiƒŠ[ƒtƒ@ƒCƒ‹‚©‚烊[ƒhBUnicode Œ`Ž®‚̃eƒLƒXƒgƒtƒ@ƒCƒ‹‚©‚Ç‚¤‚©”»’è‚·‚é
+
+ƒƒ“ƒo[
+ +
+    Set bin = new BinaryArray
+    bin.Load  "unicode_sample.txt"
+    strbin = bin.Read( Empty, Empty )
+    strbin = LeftB( strbin, 2 ) + ChrB( &h6F ) + ChrB( &h30 ) + MidB( strbin, 3 )
+    bin.Write  strbin, 0, Empty
+    bin.Save  "unicode_sample.txt"
+ +
+LeftB, MidB, RightB, LenB, AscB, ChrB ‚́A•¶Žš—ñ‘€ìŠÖ”‚̃oƒCƒiƒŠ”Å‚Å‚·B
+
+ƒtƒ@ƒCƒ‹F
+ +
+System.vbs
+
+”z—ñ‚Ì—v‘fB ”z—ñ”ԍ†B iƒfƒtƒHƒ‹ƒgEƒvƒƒpƒeƒBj
+ + +
+.Load
+
+.Save
+
+.Read
+
+.Write
+
+.ToEmpty
+ + +
+.ReDim_
+
+.UBound_
+
+”z—ñ‚Ì—v‘f”B ƒoƒCƒgEƒTƒCƒY
+
+”z—ñ‚Ì—v‘f”B ƒoƒCƒgEƒTƒCƒY
+
+”z—ñ‚Ì—v‘f”B ƒoƒCƒgEƒTƒCƒY
+
+”z—ñ‚Ì—v‘f”‚ð•ÏX‚µ‚Ü‚·B ReDim Preserve ‚Æ“¯‚¶‚Å‚·B
+
+ƒtƒ@ƒCƒ‹‚Ì“à—e‚ðA”z—ñ‚É“ü—Í‚µ‚Ü‚·B
+
+”z—ñ‚Ì“à—e‚ðAƒtƒ@ƒCƒ‹‚ɏo—Í‚µ‚Ü‚·B
+
+”z—ñ‚Ì“à—e‚̈ꕔ‚ðAByte ”z—ñ‚É‚µ‚Ä•Ô‚µ‚Ü‚·B
+
+”z—ñ‚Ì“à—e‚̈ꕔ‚ðA•ÏX‚µ‚Ü‚·B
+
+”z—ñ‚ð‹ó‚É‚µ‚Ü‚·B ”z—ñ—v‘f”‚Í 0 ‚É‚È‚è‚Ü‚·B
+
+”z—ñ‚̍őå—v‘f”ԍ†‚ð•Ô‚µ‚Ü‚·B
+
+”z—ñ‚Ì‚·‚ׂĂ̗v‘f‚𕶎š—ñ‚É‚µ‚Ü‚·B
+
ƒeƒXƒg
-
+
+¨ T_Binary ƒtƒHƒ‹ƒ_
+
+(src)
+ + + +
+”z—ñ‚Ì“à—e‚̈ꕔ‚ðA\‘¢‰»‚µ‚½Ž«‘‚ðŽæ“¾‚µ‚Ü‚·B
+
+\‘¢‰»‚µ‚½”z—ñ‚ðŽg‚Á‚āAƒoƒCƒiƒŠ”z—ñ‚Ì“à—e‚̈ꕔ‚Ƀ‰ƒCƒg‚µ‚Ü‚·B
+ +
+    Dim  bin, out, size
+    bin.Write  &h10, Empty, Array( &h12, &h34, &h56, &h78, &h9A, &hBC, &hDE )
+    size = bin.ReadStruct( &h10, out, Array( "a", vbByte,  "b", vbInteger+vbArray, 3 ) )
+    '// out("a")    = &h12
+    '// out("b")(0) = &h5634
+    '// out("b")(1) = &h9A78
+    '// out("b")(2) = &hDEBC
+
+ƒoƒCƒiƒŠ[ƒtƒ@ƒCƒ‹‚ð\‘¢‰»‚µ‚㊁[ƒh‚·‚é
+ +
+.Read
+
+.Write
+
+.Save
+
+.Load
+
+.Write
+ +
+.Save
+
+.WriteFromBinaryArray
+
+”z—ñ‚Ì“à—e‚̈ꕔ‚ðƒRƒs[‚µ‚Ü‚·B
+ + +
+    Set bin = new_BinaryArray( Array( &h42, &h4D ) )
+
+ƒoƒCƒiƒŠ[ƒf[ƒ^‚ðì¬‚·‚é
+ + + + + + + + + + +© +¥ +£ + + + +
+  Set bin = new_BinaryArray( Array( &h42, &h4D ) )
+ +
+Function  new_BinaryArray( IntegerArray as array of integer ) as BinaryArray
+
+ƒoƒCƒiƒŠ”z—ñ‚𐶐¬‚µ‚Ü‚·B
+
+yˆø”z
+
+IntegerArray
+
+ƒoƒCƒiƒŠ[‚Ì“à—e
+
+•Ô‚è’l
+
+¶¬‚³‚ꂽƒoƒCƒiƒŠ”z—ñ
+
+ŠÖ˜A
+
ƒTƒ“ƒvƒ‹
-
+
ƒ\[ƒX
-
+ +
¨ System.vbs
-
-¨ T_Binary.vbs
-
-¨ MD5
-
-ŠÖ˜A
-
-MD5 ƒnƒbƒVƒ…’l‚́A0`9, a`f ‚Ì•¶Žš‚ª32•¶Žš‚Ì•¶Žš—ñ‚É‚È‚è‚Ü‚·B
-
-SHA-1 ƒnƒbƒVƒ…’l‚́A0`9, a`f ‚Ì•¶Žš‚ª40•¶Žš‚Ì•¶Žš—ñ‚É‚È‚è‚Ü‚·B
-
-SHA-256 ƒnƒbƒVƒ…’l‚́A0`9, a`f ‚Ì•¶Žš‚ª64•¶Žš‚Ì•¶Žš—ñ‚É‚È‚è‚Ü‚·B
- -
-Property Get  BinaryArray::SHA1() as string
-
-ƒL[ƒ[ƒhF
- - -
-Property Get  BinaryArray::SHA256() as string
-
-SHA-256, SHA-384, SHA-512, RIPEMD-160 ‚́AWindows Vista ˆÈ~‚ÅŽg‚¦‚Ü‚·B
- -
-Property Get  BinaryArray::SHA384() as string
- -
-Property Get  BinaryArray::SHA512() as string
-
-SHA-384 ƒnƒbƒVƒ…’l‚́A0`9, a`f ‚Ì•¶Žš‚ª96•¶Žš‚Ì•¶Žš—ñ‚É‚È‚è‚Ü‚·B
-
-SHA-512 ƒnƒbƒVƒ…’l‚́A0`9, a`f ‚Ì•¶Žš‚ª128•¶Žš‚Ì•¶Žš—ñ‚É‚È‚è‚Ü‚·B
-
-RIPEMD-160 ƒnƒbƒVƒ…’l‚́A0`9, a`f ‚Ì•¶Žš‚ª40•¶Žš‚Ì•¶Žš—ñ‚É‚È‚è‚Ü‚·B
- -
-Property Get  BinaryArray::RIPEMD160() as string
-
-¨ ƒnƒbƒVƒ…’l
- -
-5c1d447971bc0c49f09b2e965ac4ed37
-
-c •\Ž¦—á
- - - - - - + + + + - + -© -¥ -£ - - - -
-Sub  Main()
-    Set c = g_VBS_Lib
-
-    path = InputPath( "zipƒtƒ@ƒCƒ‹‚̃pƒX >", c.CheckFileExists )
-    echo  GetVersionString( path )
-End Sub
-
-Dim  g_VersionDataBase : g_VersionDataBase = Array(_
-    "c28bae2972d4e9c9f90ed1861f0b8002", "vbslib, 4.00, 2012-07-02",_
-    "700af264a9f00733b4d26f0407625d5b", "vbslib, 4.01, 2013-02-14" )
-
-Function  GetVersionString( Path )
-    If IsArray( g_VersionDataBase ) Then _
-        Set g_VersionDataBase = Dict( g_VersionDataBase )
-
-    value_of_MD5 = ReadBinaryFile( Path ).MD5
-    If g_VersionDataBase.Exists( value_of_MD5 ) Then
-        GetVersionString = g_VersionDataBase( value_of_MD5 )
-    Else
-        GetVersionString = "Unknown"
-    End If
-End Function
-
-zip ‚Ȃǂ̃pƒbƒP[ƒWEƒtƒ@ƒCƒ‹‚̃o[ƒWƒ‡ƒ“‚ð MD5 ‚©‚ç”»’è‚·‚éƒ\[ƒXEƒR[ƒh‚̃Tƒ“ƒvƒ‹
-‚ðŽ¦‚µ‚Ü‚·B
-
+© +¥ +£ + + + +
+Function  new_BinaryArrayFromFile( Path as string ) as BinaryArray
+
+ƒoƒCƒiƒŠEƒtƒ@ƒCƒ‹‚©‚çƒoƒCƒiƒŠ”z—ñ‚𐶐¬‚µ‚Ü‚·B
+
+yˆø”z
+
+Path
+
+ƒoƒCƒiƒŠEƒtƒ@ƒCƒ‹‚̃pƒX
+
+•Ô‚è’l
+
+¶¬‚³‚ꂽƒoƒCƒiƒŠ”z—ñ
+
+ƒ\[ƒX
+
+¨ System.vbs
+
ŠÖ˜A
- - + + - - - - + + + + - + -© -¥ -£ - - - - - - - -
-  Set bin = new_BinaryArrayFromBase64( "EjRWeA==" )
-  echo  bin.Base64
-
-ƒoƒCƒiƒŠ[Eƒf[ƒ^i”z—ñ‚Ì‘S‘́j‚ɑ΂·‚é Base64 ‚ŃGƒ“ƒR[ƒh‚³‚ꂽ•¶Žš—ñB
-
+© +¥ +£ + + + +
+  Set bin = new_BinaryArrayFromBase64( "EjRWeA==" )
+ +
+Function  new_BinaryArrayFromBase64( Base64_Text as string ) as BinaryArray
+
+Base64 ‚ŃGƒ“ƒR[ƒh‚³‚ꂽ•¶Žš—ñ‚©‚çƒoƒCƒiƒŠ”z—ñ‚𐶐¬‚µ‚Ü‚·B
+
+yˆø”z
+
+Base64_Text
+
+Base64 ‚ŃGƒ“ƒR[ƒh‚³‚ꂽ•¶Žš—ñ
+
+•Ô‚è’l
+
+¶¬‚³‚ꂽƒoƒCƒiƒŠ”z—ñ
+
ƒTƒ“ƒvƒ‹
-
+
ƒ\[ƒX
-
+
¨ System.vbs
-
+
ƒeƒXƒg
-
+
¨ T_Binary.vbs
-
+
Test_of_Base64
-
+
ŠÖ˜A
- -
-¨ Base64
-
-ŽQl
- + - - - - + + + + - + -© -¥ -£ - - - - - - -
-ƒoƒCƒiƒŠ[Eƒf[ƒ^‚ðŽw’肵‚½•¶ŽšƒR[ƒhƒZƒbƒg‚Ì•¶Žš—ñ‚Æ‚µAVBScript ‚Ì•¶Žš—ñ‚ð•Ô‚µ‚Ü‚·B
-
+© +¥ +£ + + + +
+  Set bin = new_BinaryArrayAsText( "Š¿Žš", "EUC-JP" )
+ +
+Function  new_BinaryArrayAsText( Text as string, CharacterSet as string ) as BinaryArray
+
+•¶Žš—ñ‚©‚çŽw’肵‚½•¶ŽšƒR[ƒhƒZƒbƒg‚̃oƒCƒiƒŠEƒf[ƒ^‚ðŽ‚ÂƒoƒCƒiƒŠ”z—ñ‚𐶐¬‚µ‚Ü‚·B
+
+yˆø”z
+
+Text
+
+•¶Žš—ñ
+
+CharacterSet
+
+•¶ŽšƒR[ƒhƒZƒbƒgAEmpty ‚ðŽw’è‚·‚é‚Æ "Unicode"
+
+ƒTƒ“ƒvƒ‹
+
ƒ\[ƒX
-
+
¨ System.vbs
-
+
ƒeƒXƒg
-
+
¨ T_Binary.vbs
-
+
T_Binary_TextCharacterSet
-
+
ŠÖ˜A
-
+ +
+¶¬‚³‚ꂽƒoƒCƒiƒŠ”z—ñ
+
+•Ô‚è’l
+ - -
+
•¶ŽšƒR[ƒhƒZƒbƒgˆê——
- -
-Set shift_JIS_bin = new_BinaryArray( Array( &h8A, &hBF, &h8E, &h9A ) )
-Assert  shift_JIS_bin.Text( "Shift-JIS" ) = "Š¿Žš"
-
-ƒTƒ“ƒvƒ‹
-
-VBScript ‚Ì•¶Žš—ñ‚ðŽw’肵‚½•¶ŽšƒR[ƒhƒZƒbƒg‚É•Ï‚¦‚é
- - - - - - - - - - -© -¥ -£ - - -
-ƒ_ƒEƒ“ƒ[ƒh
-
-txt2bintxt.exe ‚́AVBScript ‚ŁAˆê•”‚ªƒoƒCƒiƒŠ‚É‚È‚Á‚Ä‚¢‚éƒeƒLƒXƒgƒtƒ@ƒCƒ‹‚ð
-ì¬‚Å‚«‚é‚悤‚É‚·‚é•ÏŠ·ƒc[ƒ‹‚Å‚·B
- -
-  f.WriteLine  "123"
-  f.WriteLine  Chr(&hFF)+"EF BB BF 0D 0A"
-  f.WriteLine  "123"
-
-ƒoƒCƒiƒŠ‚É‚È‚Á‚Ä‚¢‚és‚́As“ª‚É Chr(&hFF) ‚ðo—Í‚µ‚Ä‚­‚¾‚³‚¢B
- -
-31 32 33 0D 0A
-EF BB BF 0D 0A
-31 32 33 0D 0A
-
-‚±‚¤‚µ‚ďo—Í‚µ‚½ƒtƒ@ƒCƒ‹‚ðAin.txt ‚Æ‚µ‚āA
- -
-txt2bintxt.exe  in.txt  out.txt
-
-‚ðŽÀs‚·‚é‚ƁAout.txt ‚ÍŽŸ‚̂悤‚É‚È‚è‚Ü‚·B
-
-out.txt iƒoƒCƒiƒŠ•\Œ»j
-
-out.txt iƒeƒLƒXƒg•\Œ»j
- -
-123
-Eƒ\
-123
-
-EF BB BF 0D 0A
-
-EF BB BF 0D 0A
-
-Eƒ\
-
-EF BB BF ‚́AUTF-8 ‚Ì BOM ‚Å‚·B
-
-¨ txt2bintxt.zip
-
-•s—v‚É‚È‚Á‚½“ü—̓tƒ@ƒCƒ‹(in.txt) ‚́A•Ê“ríœ‚µ‚Ä‚­‚¾‚³‚¢B
-
-ŠÖ˜A
- -
-BOM •t‚«ƒeƒLƒXƒgƒtƒ@ƒCƒ‹
- -
-ƒoƒCƒiƒŠEƒtƒ@ƒCƒ‹EƒAƒNƒZƒX
- - - - - - -
- - - -© -¥ -£ - - - -
-Sub  Txt2BinTxt( SrcPath as string, DstPath as string )
-
-(src)
- -
-ŽQl
- - - - - - -
- - - -© -¥ -£ - - - -
-Function  get_ADODBConsts() as ADODBConsts
-
-ADODB ƒ‚ƒWƒ…[ƒ‹‚̒萔‚ðƒƒ“ƒo[‚ÉŽ‚ƒIƒuƒWƒFƒNƒg‚ð•Ô‚µ‚Ü‚·B
-
-ADODBConsts ‚ª’è‹`‚·‚é’萔
- -
+
+EUC-JP Œ`Ž®‚Ì•¶Žš—ñ‚ªŠi”[‚³‚ꂽƒoƒCƒiƒŠ”z—ñ‚𐶐¬‚µ‚Ü‚·B
+
ƒTƒ“ƒvƒ‹
- -
-Dim  c : Set c = get_ADODBConsts()
-t = f.Read( c.adReadAll )
-
-(src)
-
-ƒoƒCƒg”z—ñ‚ðì¬‚·‚éŠÖ”
-
-ƒoƒCƒg”z—ñ‚Ɛ®”‚ÌŠÔ‚Å•ÏŠ·‚·‚éŠÖ”
- - - - - - - - -
-ŠÖ˜A
- -
-ƒtƒ@ƒCƒ‹F
- -
-System.vbs
- - - - - +
+•¶Žš—ñ‚Ì’†‚Ì‚·‚ׂĂ̕¶ŽšƒR[ƒhiUnicodej‚ð•\Ž¦‚µ‚Ü‚·B
+ +
+echo  new_BinaryArrayAsText( "Š¿Žš", Empty ).xml
+ +
+•¶Žš—ñ‚ªˆÙ‚È‚Á‚Ä‚¢‚½‚ç Diff ƒc[ƒ‹‚ðŠJ‚«‚Ü‚·
+ + + + + - + -© -¥ -£ - - - -
-Function  ADODBConsts::ConvertToByteArray( ByteArray as variant,
-             Offset as integer,  Size as integer ) as array of Byte
-
-•¶Žš—ñ‚â”z—ñ‚␔’l‚ðAƒoƒCƒg”z—ñ‚É•ÏŠ·‚µ‚Ü‚·B
-
+© +¥ +£ + + + +
+Default Property  BinaryArray::Item( i as integer ) as integer
+
+”z—ñ”ԍ†‚ðŽg‚Á‚āAƒoƒCƒiƒŠ”z—ñ‚Ì—v‘f‚ðŽQÆ‚µ‚Ü‚·B iƒfƒtƒHƒ‹ƒgEƒvƒƒpƒeƒBj
+
yˆø”z
-
-ByteArray
-
-Offset
-
-•¶Žš—ñA‚Ü‚½‚Í”z—ñA‚Ü‚½‚͐”’l
-
-•Ô‚è’l‚̐擪‚Æ‚È‚é ByteArray ‚Ì’†‚̈ʒuBæ“ª=0
-
-Size
-
-ByteArray ‚Ì’†‚©‚ç•Ô‚è’l‚É‚·‚éƒTƒCƒYiƒoƒCƒgjBÅŒã‚Ü‚Å=-1
-
-ƒtƒ@ƒCƒ‹F
- -
-System.vbs
-
-•Ô‚è’l
- - -
-‚É“n‚¹‚é
-
+
+i
+
+”z—ñ‚Ì—v‘f‚̔ԍ†B æ“ª‚Í 0
+ +
+Dim  bin : Set bin = new BinaryArray
+bin.Load  "a.bin"
+echo  bin(0) '// bin.Item(0) ‚Æ“¯‚¶
+bin(0) = &h30
+
ƒTƒ“ƒvƒ‹
- -
-  Dim binary, stream
-  Dim c : Set c = get_ADODBConsts()
-  binary = c.ConvertToByteArray( ChrB( &h42 ) + ChrB( &h4D ), 0, Empty )
-  stream.Write  binary
- -
-  binary = c.ConvertToByteArray( &h4D, 1, Empty )
-
-(src)
-
-¨ T_Binary ƒtƒHƒ‹ƒ_
-
-ƒeƒXƒg
-
-ŽQl
- - - - - - - - - - - -© -¥ -£ - - - -
-Function  ADODBConsts::ConvertToStructuredByteArray( FormatAndDataArray as array ) as array of Byte
-
-\‘¢‰»‚µ‚½”z—ñ‚ðAƒoƒCƒg”z—ñ‚É•ÏŠ·‚µ‚Ü‚·B
-
-yˆø”z
-
-FormatAndDataArray
-
-ƒoƒCƒiƒŠ”z—ñ‚Öƒ‰ƒCƒg‚·‚é•”•ª‚ÌŒ^‚ƃ‰ƒCƒg‚·‚é’l‚̏W‡
-
-•Ô‚è’l
- - -
-‚É“n‚¹‚é
-
+
+bin(0)
+
+bin(0)
+
(src)
-
-¨ T_Binary ƒtƒHƒ‹ƒ_
-
-ƒeƒXƒg
-
-ŽQl
- -
-\‘¢‰»‚µ‚½”z—ñAFormatAndDataArray ˆø”‚Ìà–¾
+
+‚PƒoƒCƒg‚¸‚ƒAƒNƒZƒX‚µ‚Ü‚·B
- - - - + + + + - -
+ +