public FileOpenResult FileDialogOpen() { FileOpenResult openResult = new FileOpenResult(); using (OpenFileDialog fileDialog = new OpenFileDialog()) { DialogResult result = fileDialog.ShowDialog(); fileDialog.InitialDirectory = @"c:\\"; fileDialog.Filter = "txt files (*.txt)|*.txt"; fileDialog.FilterIndex = 2; fileDialog.RestoreDirectory = true; fileDialog.Title = "Załaduj plik z wynikami pomiarów"; //zabezpieczenie, ze zostanie zaladowany plik z poprawnym rozszerzeniem if (fileDialog.ShowDialog().Equals(DialogResult.OK) && System.IO.Path.GetExtension(fileDialog.FileName) == ".txt") { Console.WriteLine(fileDialog.FileName); openResult.Path = fileDialog.FileName; openResult.DialogResult = DialogResult.OK; } else if (result == DialogResult.Cancel) { openResult.Path = ""; openResult.DialogResult = DialogResult.None; } else { openResult.Path = ""; openResult.DialogResult = DialogResult.None; } } return(openResult); }
public FileReader() { FileOpenResult fileOpen = new FileOpenResult().FileDialogOpen(); this.Path = fileOpen.GetPath(); this.Status = fileOpen.GetStatus(); }
/// <summary> /// Translate a <c>FileOpenResult</c> code to a string. The returned /// string is localized. /// </summary> /// <param name="fr"><c>FileOpenResult</c> code to be translated.</param> /// <returns>Localized string.</returns> public static string FileOpenResultToString(FileOpenResult fr) { string str; switch (fr.Code) { case FileOpenResultCode.Success: str = KPRes.Success; break; case FileOpenResultCode.FileNotFound: str = KPRes.FileNotFoundError; break; case FileOpenResultCode.InvalidFileStructure: str = KPRes.InvalidFileStructure; break; case FileOpenResultCode.InvalidFileSignature: str = KPRes.InvalidFileSignature; break; case FileOpenResultCode.IOError: str = KPRes.IOError; break; case FileOpenResultCode.NoFileAccess: str = KPRes.NoFileAccessRead; break; case FileOpenResultCode.UnknownEncryptionAlgorithm: str = KPRes.UnknownEncryptionAlgorithm; break; case FileOpenResultCode.UnknownError: str = KPRes.UnknownError; break; case FileOpenResultCode.UnknownFileVersion: str = KPRes.UnknownFileVersion; break; case FileOpenResultCode.SecurityException: str = KPRes.InternalSecurityException; break; case FileOpenResultCode.InvalidHeader: str = KPRes.InvalidHeader; break; case FileOpenResultCode.InvalidFileFormat: str = KPRes.InvalidFileFormat; break; default: str = KPRes.UnknownError; break; } if ((fr.Message != null) && (fr.Message.Length > 0)) { str += "\r\n\r\n" + fr.Message; } return(str); }
/// <summary> /// Presents a file dialog box, and then opens and reads the selected hex file. /// If successful, the object's fields are appropriately updated. /// </summary> /// <returns></returns> public FileOpenResult OpenHexFile() { FileOpenResult retval = FileOpenResult.ReadCancelled; OpenFileDialog openFileDialog1 = new OpenFileDialog(); openFileDialog1.InitialDirectory = "c:\\"; openFileDialog1.Filter = "All files (*.*)|*.*|Hex files (*.hex)|*.hex"; openFileDialog1.ShowReadOnly = true; openFileDialog1.ReadOnlyChecked = true; openFileDialog1.FilterIndex = 2; openFileDialog1.RestoreDirectory = true; if (openFileDialog1.ShowDialog() == DialogResult.OK) { InitHexImage(); mHexImageValid = false; mHexFileName = openFileDialog1.FileName.ToString(); try { Stream HexFileStream; if ((HexFileStream = openFileDialog1.OpenFile()) != null) { InitHexImage(); if (ReadHexFile(HexFileStream) == true) { //MessageBox.Show("Hex file read successfully!"); Debug.WriteLine("Hex file read successfully!"); //serialComm.DisplayStatus(Serial_Comm.OutputStyle.Status, "Hex file read successfully!" + Environment.NewLine); mHexImageValid = true; // The first byte of AppFW space has to be the lowest specified addr in the hex file mAppFWstartAddr = mLowestSpecifiedAddr; // Add number of signature/CRC bytes to highest specified addr to get app FW end addr // mAppFWendAddr = mHighestSpecifiedAddr + (int)AppFWimageInfoBlock.sigByte3 + 1; // Add 1 because enum starts at 0 mAppFWendAddr = mHighestSpecifiedAddr; InitHexImageInfo(ref mHexImage); retval = FileOpenResult.ReadSuccess; } else { retval = FileOpenResult.ReadError; //MessageBox.Show("Unknown error reading the Hex file!"); //serialComm.DisplayStatus(Serial_Comm.OutputStyle.Error, "Unknown error reading the Hex file!" + Environment.NewLine); } } } catch (Exception ex) { //MessageBox.Show("Error: Could not read file from disk. Original error: " + ex.Message); //serialComm.DisplayStatus(Serial_Comm.OutputStyle.Error, "Error: Could not read file from disk. Original error: " + ex.Message + Environment.NewLine); Debug.WriteLine("Error: Could not read file from disk. Original error: " + ex.Message); retval = FileOpenResult.ReadError; } } return(retval); }