C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

■88894 / 1階層)  フォルダ内のファイル名の取得について
□投稿者/ 魔界の仮面弁士 (1874回)-(2018/10/11(Thu) 11:34:05)
2018/10/11(Thu) 16:52:24 編集(投稿者)

No88893 (mai さん) に返信
> 特定のフォルダ内にあるファイル(pdf.word)名を拡張子を除いて
> 全て取得する方法を考えております。
> 自分が調べた限りでは、格納先のパスは取得できるのですが、
> ファイル名そのものを取得できません。どうすれば宜しいでしょうか。

受け取ったそれぞれのパスを Path.GetFileNameWithoutExtension に渡すことで、
拡張子の無いファイル名を得ることができます。


(例1)
Dim target As String = My.Computer.FileSystem.SpecialDirectories.MyDocuments
Dim pdfFileNames As String() = Directory.EnumerateFiles(target, "*.pdf", SearchOption.AllDirectories).Select(AddressOf Path.GetFileNameWithoutExtension).ToArray()


(例2)
Dim target As String = My.Computer.FileSystem.SpecialDirectories.MyDocuments
Dim files As String() = Directory.GetFiles(target, SearchOption.TopDirectoryOnly)
For n = 0 To UBound(files)
  files(n) = Path.GetFileNameWithoutExtension(files(n))
Next


(例3)
Dim target As String = My.Computer.FileSystem.SpecialDirectories.MyDocuments
Dim extList As String() = {".pdf", ".doc", ".docx", "docm"}
Dim q = From p In Directory.GetFiles(target, "*.*", SearchOption.AllDirectories)
    Let ext = Path.GetExtension(p).ToLowerInvariant()
    Where extList.Contains(ext)
    Select Path.GetFileNameWithoutExtension(p)
Dim pdfOrWordFiles As String() = q.ToArray()
編集キー/

前の記事(元になった記事) 次の記事(この記事の返信)
←フォルダ内のファイル名の取得について /mai →Re[2]: フォルダ内のファイル名の取得について /mai
 
上記関連ツリー

フォルダ内のファイル名の取得について / mai (18/10/11(Thu) 10:51) #88893
フォルダ内のファイル名の取得について / 魔界の仮面弁士 (18/10/11(Thu) 11:34) #88894 ←Now
  └ Re[2]: フォルダ内のファイル名の取得について / mai (18/10/12(Fri) 09:35) #88905
    └ Re[3]: フォルダ内のファイル名の取得について / リンク (18/10/12(Fri) 18:08) #88909

上記ツリーを一括表示 / 上記ツリーをトピック表示
 
上記の記事へ返信