@Zimaell

Как безопасно перезаписать файл?

Вот у меня лежит файл в /Resources/Data/DataSettings.txt файл, в нем записаны настройки с виде строки разделенные "|", то есть я его достаю прочитать так
public float MusicVolume = 0.2f; // по умолчанию
public float SoundVolume = 0.2f; // по умолчанию
public int Language = 0; // по умолчанию
private void GetDataVariable(){
  TextAsset DataSettings = Resources.Load("Data/DataSettings") as TextAsset;
  string StringSettings = DataSettings.text.Replace(" ", "");
  string[] ArrayStringSettings = StringSettings.Split('|');
  string name,value;
  foreach(string val in ArrayStringSettings){
    if(!val.Contains("=")) continue;
      string[] a = val.Split(new string[] {"="}, StringSplitOptions.RemoveEmptyEntries);
      name = a[0];
      value = a[1];
      switch(name){
        case "MusicVolume": MusicVolume = float.Parse(value, CultureInfo.InvariantCulture); break;
        case "SoundVolume": SoundVolume = float.Parse(value, CultureInfo.InvariantCulture); break;
        case "Language": Language = Convert.ToInt32(value); break;
        }
      }
........... и т.д.

сам файл выглядит так вот просто
MusicVolume = 0.6|SoundVolume = 0.2|Language = 3

Вопроса 2:
1 - Как его перезаписать?
А то вот так оно дописывает а не перепысывает
StreamWriter writer = new StreamWriter("Assets/Resources/Data/DataSettings.txt", true);
writer.WriteLine("........");
writer.Close();

2 - Как безопасно перезаписать?
А то вдруг перезапись идет следующим образом (как многие советуют в инэте), удалить файл создать новый и заполнить его....
Но так может быть что он удалится и при этом приложение закроется и бб данные...
Как данные действия сделать более правильнее?
  • Вопрос задан
  • 252 просмотра
Решения вопроса 1
hottabxp
@hottabxp
Сначала мы жили бедно, а потом нас обокрали..
StreamWriter writer = new StreamWriter("Assets/Resources/Data/DataSettings.txt", true);

true - новые данные добавляются в конец файла, false - файл перезаписывается.

А то вдруг перезапись идет следующим образом (как многие советуют в инэте), удалить файл создать новый и заполнить его....

MSDN - How to: Write text to a file - тут все отлично рассказано и показано на примерах.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы