using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using System.IO; namespace vcfSplit { public partial class MainForm : Form { public MainForm() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { DialogResult dr = openFileDialog1.ShowDialog(); if (dr == DialogResult.OK) { txtSource.Text = openFileDialog1.FileName; EnableSplitButton(); } } private void btnDestination_Click(object sender, EventArgs e) { DialogResult dr = folderBrowserDialog1.ShowDialog(); if (dr == DialogResult.OK) { txtDestination.Text = folderBrowserDialog1.SelectedPath; EnableSplitButton(); } } private void EnableSplitButton() { btnSplit.Enabled = ((txtDestination.Text.Length > 0) && (txtSource.Text.Length > 0)); } private void btnSplit_Click(object sender, EventArgs e) { string source = File.ReadAllText(txtSource.Text); string[] item = source.Split(new string[]{"END:VCARD"}, StringSplitOptions.RemoveEmptyEntries); progressBar1.Maximum = item.Length; for (int i = 0; i < item.Length; i++) { progressBar1.Value = i; File.WriteAllText(txtDestination.Text + "\\card" + i.ToString() + ".vcf", item[i] + "\nEND:VCARD"); } progressBar1.Value = progressBar1.Maximum; MessageBox.Show("Complete."); this.Close(); } } }