2016-05-02 6 views
-2

Я действительно новичок в программировании на C#. Я не могу найти другой код только для сохранения. нашли Save As, но не только Save. Я делаю форму, и у меня есть меню инструментов. Это то, что у меня есть для меня. Сохранить какC# Сохранить ---- Невозможно найти разницу между Save & Save As

private void saveAsToolStripMenuItem_Click(object sender, EventArgs e) 
{ 
    //try/catch statement 
    try 
    { 
     saveFileDialog1.ShowDialog(); 
     outFile = new StreamWriter(saveFileDialog1.FileName); 
     outFile.Close(); 
    }//end try 
    catch(Exception ex) 
    { 
     lblMessage.Text = ex.Message; 
    }//end catch 
} 

Что нужно добавить только для Сохранить? Спасибо и любая помощь оценена!

+2

Если вы хотите сохранить, вам необходимо уже знать путь к файлу, который вы хотите сохранить. Сохранить - это просто Сохранить как без диалога. – AntiTcb

+0

Для первого сохранения диалог «Сохранить как» отлично подходит (например, для проверки потока пользовательского интерфейса в Word или Блокноте). Если файл уже был сохранен, вы просто пропустите диалог и напишите данные в файл, нет необходимости запрашивать какую-либо информацию от пользователя. –

+0

Итак, я бы просто оставил этот код вот так? private void saveToolStripMenuItem_Click (отправитель объекта, EventArgs e) { } } // end – LindaS

ответ

1

В общем случае разница между Save и Save-as заключается в том, что первый сохраняет файл под своим «существующим» именем файла, в то время как Save-as запрашивает новое имя файла.

Какое существующее имя файла? обычно:

  • Имя файла, который вы открыли для редактирования.
  • Имя, в котором вы сохранили файл.

Так что в плане изменения кода выше, чтобы реализовать сэкономить, вам нужно:

  • в вашем сохранить как метод, сохранить значение saveFileDialog1.FileName где-то, так что вы можете обратиться к нему позже. Если у вас есть класс, который представляет файл, который вы сейчас редактируете где-то в своем приложении, сохраняя его текущее имя файла, может быть, это не плохой ход.
  • В вашем методе сохранения не показывайте диалог - обратитесь к тому, где вы сохранили имя файла, под которым нужно сохранить.
  • В вашем открытом методе убедитесь, что вы сохранили имя файла в том же месте, чтобы вы могли ссылаться на него в своем сохранении.

Дополнительные соображения:

  • Вы можете подсказать пользователю MessageBox видеть, хотят ли они, чтобы перезаписать существующий файл, в методе сохранения.
  • Вам нужно решить, что делать для файла без имени - вы разрешаете пользователю нажимать «Сохранить как», отключив параметр сохранения или если ваш метод сохранения ведет себя как сохранение, как при отсутствии имени файла и подсказки пользователь с диалоговым окном сохранения?
+0

Ty !!! Огромная помощь! – LindaS