private void CmdFiles_Click(object sender, EventArgs e) { DialogResult result1 = MessageBox.Show("Αρχείο εισαγωγής στίχων: inverse.txt\nΑρχείο εγγραφής αποτελεσμάτων: outverse.txt\nΝα συνεχίσω ;", "Έγκριση ...", MessageBoxButtons.OKCancel); String message = null; ErrorLines = 0; TotalLines = 0; if (result1 == DialogResult.OK) { try { /*ΑΝΟΙΓΜΑ ΑΡΧΕΙΟΥ ΤΟ ΟΠΟΙΟ ΒΡΙΣΚΕΤΑΙ ΣΤΟ ΣΧΕΤΙΚΟ ΜΟΝΟΠΑΤΙ ΤΟΥ project*/ using (StreamReader inputFile = new StreamReader("inverse.txt")) /*Το using στο τέλος κλείνει το stream*/ { /*Εφόσον όλα πήγαν ΟΚ με το άνοιγμα του input file θα δημιουργήσουμε το αρχείο των αποτελεσμάτων*/ /*ΑΝΟΙΓΜΑ ΑΡΧΕΙΟΥ ΑΠΟΤΕΛΕΣΜΑΤΩΝ*/ using (StreamWriter outputFile = new StreamWriter("outverse.txt")) { LblResult.Text = "Μετρική ανάλυση σε εξέλιξη ..."; //Εμφάνιση μηνύματος στο LblResult LblResult.SelectAll(); LblResult.SelectionColor = Color.Black; /*ΔΙΑΒΑΣΜΑ ΓΡΑΜΜΗ-ΓΡΑΜΜΗ ΤΟΥ ΑΡΧΕΙΟΥ ΜΕΧΡΙ ΤΟ EOF*/ while ((VerseLine = inputFile.ReadLine()) != null) { //Αύξηση της τιμής του counter των γραμμών TotalLines++; //Μετρική ανάλυση αυτού του στίχου Metrics.DoScansion(ref VerseLine, ref ScansionLine, ref ErrorLines); outputFile.WriteLine(VerseLine); //Εγγραφή στο αρχείο αποτελεσμάτων του στίχου outputFile.WriteLine(ScansionLine); //και του αποτελέσματος της μετρικής του ανάλυσης } } message = "Η μετρική ανάλυση μέσω αρχείων ολοκληρώθηκε.\nΣύνολο στίχων: " + TotalLines + "\nΣύνολο λαθών: " + ErrorLines; } } catch (Exception ex) { MessageBox.Show(ex.Message, "Λάθος στη διαχείριση των αρχείων !", MessageBoxButtons.OK); LblResult.Clear(); TxtInput.Focus(); return; } } else { message = "Η διαδικασία ακυρώθηκε !"; } MessageBox.Show(message, "Τέλος μετρικής ανάλυσης", MessageBoxButtons.OK); LblResult.Clear(); TxtInput.Focus(); }
public void testDoScansion() { Console.WriteLine("\n\n--> Έλεγχος μεθόδου DoScansion του Metrics module μέσω αρχείου"); try { /*ΑΝΟΙΓΜΑ ΑΡΧΕΙΟΥ ΤΟ ΟΠΟΙΟ ΒΡΙΣΚΕΤΑΙ ΣΤΟ ΣΧΕΤΙΚΟ ΜΟΝΟΠΑΤΙ ΤΟΥ project*/ using (StreamReader inputFile = new StreamReader("inverse.txt")) /*Το using στο τέλος κλείνει το stream*/ { string VerseLine = null; string ScansionLine = null; int TotalLines = 0; int ErrorLines = 0; /*Εφόσον όλα πήγαν ΟΚ με το άνοιγμα του input file θα δημιουργήσουμε το αρχείο των αποτελεσμάτων*/ /*ΑΝΟΙΓΜΑ ΑΡΧΕΙΟΥ ΑΠΟΤΕΛΕΣΜΑΤΩΝ*/ using (StreamWriter outputFile = new StreamWriter("outverse.txt")) { /*ΔΙΑΒΑΣΜΑ ΓΡΑΜΜΗ-ΓΡΑΜΜΗ ΤΟΥ ΑΡΧΕΙΟΥ ΜΕΧΡΙ ΤΟ EOF*/ while ((VerseLine = inputFile.ReadLine()) != null) { //Αύξηση της τιμής του counter των γραμμών TotalLines++; //Μετρική ανάλυση αυτού του στίχου checkMethods.DoScansion(ref VerseLine, ref ScansionLine, ref ErrorLines); outputFile.WriteLine(VerseLine); //Εγγραφή στο αρχείο αποτελεσμάτων του στίχου outputFile.WriteLine(ScansionLine); //και του αποτελέσματος της μετρικής του ανάλυσης } } Console.WriteLine("Η μετρική ανάλυση μέσω αρχείων ολοκληρώθηκε.\nΣύνολο στίχων: " + TotalLines + "\nΣύνολο λαθών: " + ErrorLines); } } catch (Exception e) { Console.WriteLine("Error in file handling:"); Console.WriteLine(e.Message); } }