Exemplo n.º 1
0
        public static void Save()
        {
            if (Default == null || BaseDirectory.IsNullOrEmpty())
            {
                return;
            }
            if (!Directory.Exists(BaseDirectory))
            {
                Directory.CreateDirectory(BaseDirectory);
            }
            if (!Default.Password.IsNullOrEmpty())
            {
                Default.Password = Convert.ToBase64String(Encoding.ASCII.GetBytes(Default.Password));
            }

            try
            {
                // 設定をバックアップ
                File.Copy(Path.Combine(BaseDirectory, @"Preference.xml"), Path.Combine(BaseDirectory, @"Preference_backup.xml"), true);
            }
            catch { }

            using (var stream = File.Open(Path.Combine(BaseDirectory, @"Preference.xml"), FileMode.Create, FileAccess.Write, FileShare.None))
            {
                Serializer <Settings> .Serialize(stream, Default);
            }
        }