CSVなどのファイル出力や二重起動禁止にするMutexを使うときに
だいたい必ずCloseとかしなさいって言われるけど
そのちょっとがめんどくさい
普通にクローズ書いた処理
using System;
using System.IO;
using System.Text;
using System.Windows.Forms;
namespace TestProject
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
StreamWriter sw = new StreamWriter(@"C:\\tmp\\test.txt",
using System.IO;
using System.Text;
using System.Windows.Forms;
namespace TestProject
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
StreamWriter sw = new StreamWriter(@"C:\\tmp\\test.txt",
false, Encoding.GetEncoding("Shift-JIS"));
sw.WriteLine("テスト出力");
sw.Close();
}
}
}
sw.WriteLine("テスト出力");
sw.Close();
}
}
}
ただ最後にClose()ってすればいいのだけど
処理中に例外が発生したらどうしようってなって
Close処理をfinallyに入れなきゃいけないこととかあると思います
ちょっとのそれが面倒(だけどクローズしなきゃおこられる)
これでよかった
using System;
using System.IO;
using System.Text;
using System.Windows.Forms;
namespace TestProject
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
using (StreamWriter sw = new StreamWriter(@"C:\\tmp\\test.txt",
using System.IO;
using System.Text;
using System.Windows.Forms;
namespace TestProject
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
using (StreamWriter sw = new StreamWriter(@"C:\\tmp\\test.txt",
false, Encoding.GetEncoding("Shift-JIS")))
{
sw.WriteLine("テスト出力");
}
}
}
}
{
sw.WriteLine("テスト出力");
}
}
}
}
usingを使えばCloseを書かなくても自動で開放されるみたいって教えてもらったので
今後はこれを多用していこうと思います