Как создать / сохранить файл xml (созданный сериализатором) в определенной директории? - PullRequest
0 голосов
/ 02 мая 2020

Приведенный ниже код создает файл XML рядом с исполняемым файлом приложения. Однако мне бы хотелось, чтобы файл XML был создан в определенной папке рядом с исполняемым файлом.

Например (я хочу получить такое поведение):

// same directory
App.exe
ParametersFolder (here lies Parameters.xml)
// same directory

Код, который я сейчас использую

public static void Save()
{
  using (var file = File.Create(Singletone.FileName))
         formatter.Serialize(file, Singletone);
}

и десериализация

 public static void Load()
        {
            try
            {


                Parameters parameters;
                using (var file = File.OpenRead(Singletone.FileName))
                    parameters = (Parameters)formatter.Deserialize(file);

                Singletone.Text1 = parameters.Text1;
                Singletone.Text2 = parameters.Text2;

            }
            catch (Exception)
            {


                Singletone.Text1 = "first";

                Singletone.Text2 = "second";

            }
        }

1 Ответ

0 голосов
/ 02 мая 2020

Добавление папки в файл может быть просто сделано путем объединения Path.GetDirectoryName , Path.GetFileName и Path.Combine :

string oldPath = Singletone.FileName;
string folderToAdd = "ParametersFolder";

string newPath = Path.Combine(Path.GetDirectoryName(oldPath),
                              folderToAdd,
                              Path.GetFileName(oldPath));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...