실제 문제를 해결할 필요가 없습니다. 그냥 뭔가의 본질에 대해 궁금해.이미 열려있는 파일을 .OpenFile()해도됩니까?
나는 두 번 연속으로이 이벤트를 트리거하면 동일한 파일을 두 번 선택하면 파일을 명시 적으로 닫지 않았지만 어떤 종류의 오류도 발생하지 않는다는 것을 알게되었습니다. ReadLine이 파일의 끝에 도달하면 파일이 자동으로 닫히지 않습니까? 아니면 동일한 응용 프로그램에서 열려있는 한 이미 열려있는 파일을 열려고 시도 할 수 있습니까?
private void uIDownloadToolStripMenuItem_Click(object sender, EventArgs e)
{
int lineNum = 1;
using (OpenFileDialog dlgOpen = new OpenFileDialog())
try
{
// Default file extension
dlgOpen.DefaultExt = "*.hex";
// SaveFileDialog title
dlgOpen.Title = "Download UI Image";
// Available file extensions
dlgOpen.Filter = "Hex Files (*.hex)|*.hex|All Files (*.*)|*.*";
// Show SaveFileDialog box and save file
if (dlgOpen.ShowDialog() == DialogResult.OK)
{
dlgOpen.OpenFile();
string file = dlgOpen.FileName;
StreamReader reader = new StreamReader(file);
var result = MessageBox.Show("Please confirm the file:" + file, "Confirm", MessageBoxButtons.OKCancel);
if (result == DialogResult.OK)
{
commandConstruct(OP.SETSTATE, DEV.SPI_DEV, "1" , "");
if (ready == true)
{
using (reader)
{
string check;
bool verified = true;
do
{
check = reader.ReadLine();
} while (check != null);
}
}
}
}
}
catch (Exception errorMsg)
{
MessageBox.Show(errorMsg.Message);
}
}