private void btnFindText_Click(object sender, EventArgs e) { lstResults.Items.Clear(); if (txtFindText.Text.Trim() != string.Empty) { for (int i = 0; i < Msbt.TXT2.NumberOfStrings; i++) { if (Msbt.HasLabels) { Entry entry = Msbt.LBL1.Labels[i]; if (chkMatchCase.Checked) { if (Msbt.TXT2.Entries[entry.Index].Preview().Contains(txtFindText.Text)) { lstResults.Items.Add(entry); } } else { if (Msbt.TXT2.Entries[entry.Index].Preview().ToLower().Contains(txtFindText.Text.ToLower())) { lstResults.Items.Add(entry); } } } else { Entry entry = Msbt.TXT2.Entries[i]; if (chkMatchCase.Checked) { if (entry.Preview().Contains(txtFindText.Text)) { lstResults.Items.Add(entry); } } else { if (entry.Preview().ToLower().Contains(txtFindText.Text.ToLower())) { lstResults.Items.Add(entry); } } } } } if (lstResults.Items.Count == 0) { MessageBox.Show("Could not find \"" + txtFindText.Text + "\".", "Find", MessageBoxButtons.OK, MessageBoxIcon.Information); } }
// Tools private void exportToolStripMenuItem_Click(object sender, EventArgs e) { StringBuilder sb = new StringBuilder(); List <string> row = new List <string>(); if (_msbt.HasLabels) { sb.AppendLine("LabelOrder,Label,StringOrder,String"); for (int i = 0; i < _msbt.TXT2.NumberOfStrings; i++) { Entry label = _msbt.LBL1.Labels[i]; // Label row.Add((i + 1).ToString()); row.Add(label.ToString()); // Entry row.Add((label.Index + 1).ToString()); row.Add("\"" + _msbt.TXT2.Entries[label.Index].Preview().Replace("\"", "\"\"") + "\""); sb.AppendLine(String.Join(",", row.ToArray())); row.Clear(); } } else { sb.AppendLine("StringOrder,String"); for (int i = 0; i < _msbt.TXT2.NumberOfStrings; i++) { Entry entry = _msbt.TXT2.Entries[i]; // Entry row.Add((i + 1).ToString()); row.Add("\"" + entry.Preview().Replace("\"", "\"\"") + "\""); sb.AppendLine(String.Join(",", row.ToArray())); row.Clear(); } } SaveFileDialog sfd = new SaveFileDialog(); sfd.Title = "Saving "; sfd.Filter = "Comma Separated Values (*.csv)|*.csv"; sfd.InitialDirectory = Settings.Default.InitialDirectory; if (sfd.ShowDialog() == DialogResult.OK) { try { FileStream fs = new FileStream(sfd.FileName, FileMode.Create, FileAccess.Write, FileShare.None); BinaryWriter bw = new BinaryWriter(fs); bw.Write(new byte[] { 0xEF, 0xBB, 0xBF }); bw.Write(sb.ToString().ToCharArray()); bw.Close(); } catch (IOException ioex) { MessageBox.Show(ioex.Message, "File Access Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } } }