Как прочитать данные из текстового файла и добавить их в словарь?

Как можно прочитать файл txt с содержимым <br/> <pre><code>&lt;APPLICANT&gt;, ${CaseAll.name_plaintiff} &lt;ABOUTWHAT&gt;, ${CBSemple.Text} &lt;WHOM&gt;, ${CaseAll.name_defendant} &lt;DATEOFBIRTH&gt;, ${CaseAll.birthday_defendant} &lt;FROMWHOM&gt;, ${CaseAll.name_plaintiff} &lt;JUDGE&gt;, ${Judge.fathername} {Judge.name} {Judge.surname} &lt;DATE&gt;, ${DateTime.Today} &lt;NUMBER&gt;, ${CaseAll.titlenumber}</code></pre> <br/> и записать его в Dictionary как переменные? Уже попробовал использовать метод, который разбивает строки и записывает их как ключ и значение в словарь, но нужно, чтобы значения записывались как переменные.
  • 22 апреля 2024 г. 14:20
Ответы на вопрос 2
Для того чтобы прочитать данные из текстового файла и добавить их в словарь как переменные, вам потребуется выполнить следующие шаги:

1. Откройте файл для чтения и прочитайте его содержимое.
2. Разделите строки на пары ключ-значение, используя разделитель (например, ",")
3. Создайте переменные, которые будут содержать значения из файла.
4. Добавьте переменные в словарь.

Пример кода на C#:

```csharp
using System;
using System.IO;
using System.Collections.Generic;

class Program
{
    static void Main()
    {
        // Создаем словарь для хранения переменных
        Dictionary<string, string> variables = new Dictionary<string, string>();

        // Открываем файл для чтения
        using (StreamReader sr = new StreamReader("file.txt"))
        {
            // Читаем файл построчно
            string line;
            while ((line = sr.ReadLine()) != null)
            {
                // Разделяем строку на пары ключ-значение
                string[] parts = line.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
                
                // Добавляем переменные в словарь
                if (parts.Length == 2)
                {
                    variables[parts[0].Trim()] = parts[1].Trim();
                }
            }
        }

        // Пример использования переменных из словаря
        string APPLICANT = variables["<APPLICANT>"];
        string ABOUTWHAT = variables["<ABOUTWHAT>"];

        // Выводим переменные
        Console.WriteLine("APPLICANT: " + APPLICANT);
        Console.WriteLine("ABOUTWHAT: " + ABOUTWHAT);
    }
}
```

Не забудьте заменить "file.txt" на путь к вашему файлу с данными. Также учтите, что этот код предполагает, что файл содержит строки в формате "ключ,значение". В противном случае, вам может потребоваться другой подход к разделению строк и извлечению переменных.
Не используйте File.ReadAllLines и подобные, это ошибка и вы не умеете правильно с ним работать, что бы его так использовать. Исправленный код: 

string fileTagsPath = $@"{AppDomain.CurrentDomain.BaseDirectory}tags\{имя файла}.txt";
using (StreamReader reader = new StreamReader(fileTagsPath))
{
    while (!reader.EndOfStream)
    {
        string line = reader.ReadLine();
        string[] lineParts = line.Split(", ");
        replacements.Add(lineParts[0], lineParts[1]);
    }
}
Похожие вопросы