分かりやすく、使いやすく。

拡張子無しのファイル名を取得する方法

スポンサーリンク

VBScript で拡張子無しのファイル名を取得するには、ファイルシステムオブジェクトの getBaseName メソッドを使用します。

  1. 拡張子無しのファイル名を取得する
  2. 特定のフォルダの拡張子無しファイル名一覧をファイルに出力する


拡張子無しのファイル名を取得する

拡張子無しのファイル名を取得するサンプルコードは次の通りです。

VBScript(実行可能なサンプルコード)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Option Explicit
 
Dim objFileSys
 
'ファイルシステムを扱うオブジェクトを作成
Set objFileSys = CreateObject("Scripting.FileSystemObject")
 
'拡張子無しのファイル名を取得(絶対パス指定の場合)
'「顧客リスト」と表示される。
WScript.Echo objFileSys.getBaseName("c:\temp\顧客リスト.xlsx")
 
'拡張子無しのファイル名を取得(相対パス指定の場合)
'「summer」と表示される。
WScript.Echo objFileSys.getBaseName("summer.jpg") 

特定のフォルダの拡張子無しファイル名一覧をファイルに出力する

特定のフォルダの拡張子無しファイル名一覧をファイルに出力するサンプルコードです。フォルダ名は出力されません。

VBScript(実行可能なサンプルコード)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
Option Explicit
 
Dim objFileSys
Dim objWriteStream
Dim objFolder
Dim objFile
Dim strPathTargetDir
Dim strPathOutputText
 
'対象のフォルダを指定。このフォルダ内にあるファイルの一覧を作成する。
strPathTargetDir = "c:\temp"
 
'出力先のファイルのパスを指定。ここにファイルの一覧を書き出す。
strPathOutputText = ".\output.txt"
 
'ファイルシステムを扱うオブジェクトを作成
Set objFileSys = CreateObject("Scripting.FileSystemObject")
 
'出力先のファイルを開く(上書きモード)
Set objWriteStream = objFileSys.OpenTextFile(strPathOutputText, 2, True)
 
'対象のフォルダのオブジェクトを取得
Set objFolder = objFileSys.GetFolder(strPathTargetDir)
 
'FolderオブジェクトのFilesプロパティからFileオブジェクトを取得
For Each objFile In objFolder.Files
  '取得したファイルの拡張子無しファイル名を取得し、ファイルに出力
  objWriteStream.WriteLine objFileSys.getBaseName(objFile.Name)
Next
 
'出力先のファイルを閉じる
objWriteStream.Close
 
Set objWriteStream = Nothing
Set objFileSys = Nothing 
スポンサーリンク