指定したフォルダ内の全てのtxtファイル内の1つの文字列を検索しファイル名を表示する方法(UWSC)

kt1516

2018年07月03日 17:15


指定したフォルダ内の全ての拡張子txtのファイル内の1つの文字列を検索し、ファイル名と行を表示するプログラムをUWSCで作ってみました。

デスクトップ上の全てのtxtファイル内の1つの文字列を検索、ファイル名と行を表示する(「こんにちは」を検索し、「こんにちは」の文字列が見つかればファイル名と見つかった行を表示)


dir = "C:\Users\{ユーザー名}\Desktop\"
files = "*.txt"

//検索する文字
search_str = "こんにちは"
For i=0 to GETDIR(dir, files)-1
ID = FOPEN("" + dir + GETDIR_FILES[i] + "", F_READ)
For j=1 to FGET(ID, -1)
//テキストファイルの1行の内容
content = FGET(ID, j)
ret = POS(search_str, content)
if ret > 0 then
print GETDIR_FILES[i] + ":" + j
break
endif
next
FCLOSE(ID)
next

{ユーザー名}のところは自分のユーザー名に変えてください。デスクトップ以外のフォルダに変えたい場合はdir = の後を変えてください。検索する文字列は自由に変えてください。


関連記事