ファイル入出力関係

ファイル選択ダイアログ表示

OpenFileDialogクラスを利用します

OpenFileDialog ofd = new OpenFileDialog(); 
 //デフォルトフォルダ 

ofd.InitialDirectory =System.Environment.GetFolderPath(Environment.SpecialFolder.Personal);

//[ファイルの種類]に表示されるファイル拡張子(必要であれば)
ofd.Filter = "HTMLファイル(*.html;*.htm)|*.html;*.htm|すべてのファイル(*.*)|*.*"; 
//タイトルを設定する 
ofd.Title = "ファイルを選択してください"; 
//ダイアログを表示する 
if (true==(bool?)ofd.ShowDialog()){
    Console.WriteLine(ofd.FileName); 
}

フォルダ選択ダイアログ表示

FolderBrowserDialogクラスを利用します。

FolderBrowserDialog fbd = new FolderBrowserDialog();
fbd.Description = "フォルダを指定してください";
if (fbd.ShowDialog() == true) {
      MessageBox.Show(fbd.SelectedPath);
}

ファイル読み込み

StreamReaderクラスを利用します。

try {

//ファイル読み込み

using (StreamReader sr = new StreamReader("c:\\temp\\sample.txt")) {

string line;

//1行づつ読み込んで、1行づつファイル出力

while ((line = sr.ReadLine()) != null) {

Console.WriteLine(line);

}

Console.Read();

}

}

catch (Exception e) {

// Let the user know what went wrong.

Console.WriteLine("The file could not be read:");

Console.WriteLine(e.Message);

}

ファイル書き込み

string filename = "c:\temp\test.txt";
string str = "abc";
Encoding encode = Encoding.GetEncoding("Shift_Jis");
StreamWriter sw = new StreamWriter(filename, false, encode);
sw.WriteLine(str);

ディレクトリ操作

ディレクトリ内のファイル一覧入手

string[] files = Directory.GetFiles(dir);
foreach (string s in files) {
    Console.WriteLine(s);
}

ディレクトリ内のディレクトリ一覧入手

string[] dirs = Directory.GetDirectories(dir);
foreach (string s in dirs) {
    Console.WriteLine(s);
}

特殊フォルダ(ディレクトリ)の入手

//デスクトップ
string desktopDir = System.Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory);
//マイドキュメント 
string mydocDir =System.Environment.GetFolderPath(Environment.SpecialFolder.Personal);

ファイル操作

ファイルの拡張子変更

//拡張子を変更するファイルのパス 
string fileName = @"C:\test\test.txt"; 
//拡張子を".bak"に変更する 
fileName = System.IO.Path.ChangeExtension(fileName, "bak");

ファイル名(フルパス)からの情報取得

string fileName = @"C:\test\test.txt";

//ディレクトリ名の取得
string dirName=System.IO.Path.GetDirectoryName(fileName);
//拡張子取得
string exeName = System.IO.Path.GetExtension(fileName);
//ファイル名取得
string filename = System.IO.Path.GetFileName(fileName);
//ファイル名(拡張子なし)の取得
string filename2 = System.IO.Path.GetFileNameWithoutExtension(fileName);