-1

現在開いているファイルを保存するときに、保存する名前を尋ねるダイアログが表示されずに問題が発生しています。

もう少し明確にするために、.txt ファイルを開いて作業し、[保存] をクリックするだけで、[名前を付けて保存] ダイアログ ボックスが表示されずにファイルが保存されます。

ここに私の保存コードがあります:

       private void SaveFile()
    {
        SaveFileDialog fileChooser = new SaveFileDialog();
        fileChooser.Title = "Choose Save Location";
        fileChooser.Filter = "Text Files (*.txt)|*.txt";

        fileChooser.OverwritePrompt = false; //Removes warning

        DialogResult result = fileChooser.ShowDialog();

        if (result == DialogResult.Cancel)
        {
            return;
        }

        try
        {
            string fileName = fileChooser.FileName;
            output = new FileStream(fileName, FileMode.OpenOrCreate, FileAccess.Write);

            fileWriter = new StreamWriter(output);

            foreach (Employee emp in employee)
            {
                fileWriter.WriteLine(emp.Firstname + "," + emp.Lastname + "," + emp.Position + "," + emp.Bmonth + "," + emp.Bday + "," + emp.BYear + "," + emp.Salary + "," + emp.Hiremonth + "," + emp.Hireday + "," + emp.Hireyear);
            }

            fileWriter.Close();
            output.Close();

        }
        catch (Exception ex)
        {
            MessageBox.Show(ex.Message);
        }
        finally
        {
            fileWriter.Close();
            output.Close();
        }
    }

それを .txt ファイルに保存して再度ロードする限り、すべてがうまく機能します。

4

2 に答える 2

2

fileChooserオブジェクトはオブジェクトSaveFileDialogです。次のように呼び出して表示させています。

DialogResult result = fileChooser.ShowDialog();

ダイアログを表示したくない場合は、fileChooserコードを省略して代わりに次を使用します。

string fileName = strAlreadyKnownFileName;
于 2012-01-16T18:34:49.863 に答える
0

まず、開いたファイルのフルパスをいくつかの変数に保存します。

private string filepath = "path/to/my/file";

次に、ボタンを作成して呼び出す必要があります。つまり、「保存」ボタンをダブルクリックし、次の簡単なコードを記述して、現在開いているファイルに必要なものを保存します。

それと同じくらい簡単...

編集:

private void SaveFile()
{
   //do your loop and stuff in here and finally write your text to the file using this
   File.WriteAllText(filepath, yourtexttobesaved);
}
于 2012-01-16T18:41:31.523 に答える