我有保存bin文件的代码,但是用户必须选择文件

         Stream myStream;
         SaveFileDialog saveFileDialog1 = new SaveFileDialog();

        saveFileDialog1.Filter = "Binary File (*.bin)|*.bin";
        saveFileDialog1.FilterIndex = 2;
        saveFileDialog1.RestoreDirectory = true;

        if (saveFileDialog1.ShowDialog() == DialogResult.OK)
        {
            if ((myStream = saveFileDialog1.OpenFile()) != null)
            {
                Question.PersistObject(questions, myStream);
                myStream.Close();
            }
        }


但是我想选择代码中的文件,如果不存在具有该名称的文件,则创建它。如何在myStream中设置该文件?

最佳答案

将与OpenFileDialog有关的所有逻辑替换为File.Open

using (var myStream = File.Open(someFilePath, FileMode.OpenOrCreate))
{
    Question.PersistObject(questions, myStream);  // do something with the stream
}


OpenOrCreate文件模式将打开该文件(如果存在),或者创建它(如果不存在)。

using语句将为您关闭流。

10-07 15:22