dポイントプレゼントキャンペーン実施中!

こんばんわ。また質問させてください。
ボタン1を押すことでリストに指定したフォルダの中身をすべて表示するプログラムが出来たのですが、このあとテキストファイルだけを表示したい場合はどうしたらいいのでしょうか?
テキストファイルだけをリストに昇順で表示して、それらテキストファイルの内容をすべて連結してみたいのでご指導してくださると助かります。
連結の方法は分かりました。

private void button1_Click(object sender, System.EventArgs e)
{
string systemFolder = "ここにフォルダのパス";
DirectoryInfo di = new DirectoryInfo(systemFolder);

// フォルダ内のファイルをリストに表示
foreach(FileInfo fi in di.GetFiles())
{
listBox1.Items.Add(fi.Name);
}
}

A 回答 (3件)

foreach(FileInfo fi in di.GetFiles())



foreach(FileInfo fi in di.GetFiles("*.txt"))
    • good
    • 0
この回答へのお礼

またまたありがとうございました。
簡単に出来ました。
いまいちヘルプや命令の詳細の調べ方がわからないので、それがいけないのでしょうか・・

お礼日時:2004/06/01 16:58

マニュアルを読みましょう。



class comp : System.Collections.IComparer {
public int Compare(object x, object y) {
return string.Compare((string)y, (string)x);
}
}

public class bar {

public static void Main() {
string systemFolder = "d:\\work";
System.IO.DirectoryInfo di = new System.IO.DirectoryInfo(systemFolder);
System.Collections.ArrayList list = new System.Collections.ArrayList();

foreach(System.IO.FileInfo fi in di.GetFiles()) {
if ( fi.Extension == ".txt" ) {
list.Add(fi.Name);
}
}
list.Sort(new comp());
foreach ( string name in list ) {
System.Console.WriteLine(name);
}
}

}

# ちなみにここは C# の質問をする場所ではありません。
    • good
    • 0
この回答へのお礼

マニュアルですか。すみません、VS.netの基本的な使い方がまだ分かってなくて・・・。

お礼日時:2004/06/01 17:02

C#は触ったことないので、自信ないですが、こんな感じでできませんか?



foreach(FileInfo fi in di.GetFiles())
{
// 追記
string sFileName = fi.Name
String sCheckText = ".txt"

If (sFileName.EndsWith(sCheckText)){
listBox1.Items.Add(fi.Name);
}
}
    • good
    • 0
この回答へのお礼

試してみたのですが「|」を入れなさいとエラーが出ちゃいました。
でも、ありがとうございました。

お礼日時:2004/06/01 16:59

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!