在WPF中编辑文本文件中的一些文本

时间:2018-10-27 00:52:32

标签: c#

我不熟悉使用表单和C#,并尝试进行分配以创建电话簿。电话簿中有不同的选择

  • 添加联系人
  • 显示所有联系人
  • 并编辑某个联系人。

当文本存储在文本文件中时,我在如何进行编辑方面遇到麻烦。我的添加代码如下,其中添加了姓名,电话号码和电子邮件。我如何能够从保存在文本文件中的联系人列表中编辑姓名之一?

添加代码:

private void addButton_Click(object sender, RoutedEventArgs e)
{
    TextWriter writer = new StreamWriter("D:\\class1.txt", append: true);
    try
    {
            string Name01 = firstName.Text;
            string Name02 = lastName.Text;
            string Phone1 = mobile.Text; 
            string Phone2 = homePhone.Text;
            string emailadd = email.Text;
            string Informtion = Name01 + "\n" + Name02 + "\n" + Phone1 + "\n" + Phone2 + "\n" + emailadd;
            writer.WriteLine("---------------");
            writer.WriteLine(Informtion);
            MessageBox.Show("Success!! Contact information added for: " +Name01 + " " +Name02);
        }
        catch (Exception ex)
        {
            throw ex;
        }  
        finally
        {
            writer.Close();
            writer.Dispose();
        }
    }

1 个答案:

答案 0 :(得分:0)

看来您的文本文件没有结构化。非结构化文本很难以编程方式进行搜索和编辑。

尝试改用XML或JSON格式的文本,这将使您更轻松地处理条目,尤其是当您使用专门开发用于处理这两种格式的条目的众多开源库之一时。

让我们以这个XML为例:

<?xml version="1.0" encoding="UTF-8"?>
<SnomIPPhoneDirectory>
  <Title>PhoneList - Snom</Title>
  <DirectoryEntry>
    <Name>Friend, First</Name>
    <Telephone>555-456-7890</Telephone>
  </DirectoryEntry>
  <DirectoryEntry>
    <Name>Person, Second</Name>
    <Telephone>555-654-0987</Telephone>
  </DirectoryEntry>
  <SoftKeyItem>
    <Name>F1</Name>
    <Label>Dial</Label>
    <SoftKey>F_ENTER</SoftKey>
  </SoftKeyItem>
</SnomIPPhoneDirectory>

使用库或.NET框架中内置的XML功能,以面向对象的方式处理电话簿条目将很简单,而无需进行任何字符串解析。