このソースは「ファイルの中の文字を探すツールの作り方」の内容です
ソースコードはこちらになります
private void listBox1_DragDrop(object sender, DragEventArgs e) { if (e.Data.GetDataPresent(DataFormats.FileDrop)) { foreach (string fileName in (string[])e.Data.GetData(DataFormats.FileDrop)) { listBox1.Items.Add(fileName); } } } private void listBox1_KeyDown(object sender, KeyEventArgs e) { if (e.KeyCode == Keys.Delete) { for (int i = 0; i <= listBox1.SelectedItems.Count; i++) { listBox1.Items.Remove(listBox1.SelectedItem); } } }
private void button3_Click(object sender, EventArgs e) { listBox1.Items.Clear(); }
private void button3_Click(object sender, EventArgs e) { textBox1.Text = ""; }
private void button1_Click(object sender, EventArgs e) { string path; string src_utf; string src_sift; int datacnt = 0; System.IO.StreamReader reader; string key_old = textBox2.Text; bool ChangeFlg; for (int i = 0; i < listBox1.Items.Count; i++) { path = listBox1.Items[i].ToString(); string[] files = { path }; if (System.IO.File.Exists(path)) { // ファイルだ! } else { //ディレクトリだ! files = System.IO.Directory.GetFiles(path, "*", System.IO.SearchOption.AllDirectories); } foreach (string searchfile in files) { label1.Text = searchfile; System.Windows.Forms.Application.DoEvents(); reader = new System.IO.StreamReader(searchfile, System.Text.Encoding.GetEncoding("utf-8")); src_utf = reader.ReadToEnd(); reader.Close(); reader = new System.IO.StreamReader(searchfile, System.Text.Encoding.GetEncoding("shift_jis")); src_sift = reader.ReadToEnd(); reader.Close(); if (src_utf.IndexOf(key_old) != -1) { textBox1.Text = textBox1.Text + searchfile + "\r\n"; datacnt++; }else if(src_sift.IndexOf(key_old) != -1){ textBox1.Text = textBox1.Text + searchfile + "\r\n"; datacnt++; } } } label1.Text = "FIX=" + datacnt.ToString() ; MessageBox.Show("OK"); }
コメント