Autor Beitrag
pakko20
Hält's aus hier
Beiträge: 1



BeitragVerfasst: Do 14.06.12 12:58 
Hallo habe folgendes Programm...

ausblenden volle Höhe C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
99:
100:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace Ampelsteuerung_v5
{
    public partial class Ampelsteuerung_v5 : Form
    {
        private void HTMLLog()
        {
            iftrue == File.Exists(logfile) )   //überprüfen ob das File logfile existiert[/b]
            {
                DelLastTwoLines();                //zu Programmabschnitt DelLastTwoLines springen/ausführen
                AppendHTMLLog();                //zu Programmabschnitt AppendHTMLLog springen/ausführen.
            } else {                            //falls nicht
                WriteHTMLlog();                 //Programm mit Abschnitt WriteHTMLlog fortfahren.
            }
        }

        private void DelLastTwoLines()
        {
            var Zeilen = System.IO.File.ReadAllLines(logfile);  //Alle Zeilen aus dem "logfile" auslesen und in die Variable Zeilen zwischenspeichern.
            System.IO.File.WriteAllLines(logfile, Zeilen.Take(Zeilen.Length - 2).ToArray()); 
// Datei logfile neuschreiben und vom Zwischenspeicher 2 Zeilen abziehen  ToArray())?????
        }

        private void AppendHTMLLog()
        {
            string strHTML;  //Variable strHTML im Format string deklarieren 
            string strAusgabe = lbDate.Text; //Text aus dem Label lbDate in strAusgabe schreiben.
            string strAmpelstatus = lbDate.Text;

            if (true == pbRED.Visible)          //Warum funktiert die Ausgabe über den Ampelstatus nicht??
            {
                strAmpelstatus = strAmpelstatus + "=>Ampel leuchtet rot";
            }

            if (true == bTagbetrieb)
            {
                strAusgabe = strAusgabe + " => Tagbetrieb";
                
            }
            //else
            if (true == rbNachtbetrieb.Checked)            {
                strAusgabe = strAusgabe + " => Nachtbetrieb";
            }


            strHTML = "<br>" + "\n" +               //hier ist Erklärungsbedarf
                strAusgabe + "\n" +
                strAmpelstatus + "\n" + 
                "</body>\n" +
                "</html>\n";
            File.AppendAllText(logfile, strHTML);
        }

        // Schreibe Logfile als HTML-Datei
        private void WriteHTMLlog()
        {
            string strHTML;
            string strAusgabe = lbDate.Text;
            string strAmpelstatus = lbDate.Text;

            if (true == pbRED.Visible)
            {
                strAmpelstatus = strAmpelstatus + "=>Ampel leuchtet rot";
            }

            if (true == bTagbetrieb)
            {
                strAusgabe = strAusgabe + " => Tagbetrieb";
            }
            else
            
            {
                strAusgabe = strAusgabe + " => Nachtbetrieb";
            }


            strHTML = "<html>\n" +              //Text wird nicht verstanden 
                "<head>\n" +
                "<title>Ausgabe Testprogramm</title>\n" +
                "<meta http-equiv=\"refresh\" content=\"5\">\n" +
                "</head>\n" +
                "<body>\n" +
                strAmpelstatus +"\n"+
                strAusgabe + "\n" +
                "</body>\n" +
                "</html>\n";
            File.WriteAllText(logfile, strHTML);
        }

    }
}

Soweit wie ich es verstehe bzw. Interpretiere hab ich als Kommentare angefügt.
Mich wundert nur warum ich den Ampelstatus nicht in die Logdatei bekomme und den HTML Code nit HEAD Body verstehe ich auch nicht...

Ich hoffe es kann/möchte mir jemand helfen...

Moderiert von user profile iconTh69: C#-Tags hinzugefügt
ThoMa
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 46
Erhaltene Danke: 3



BeitragVerfasst: Mo 02.07.12 21:26 
Hallo pakko20,

wenn Du den Programmquelltext schon vorliegen hast, dann mache es Dir doch einfach. Setze Breakpoints und trace durch das Program, guck Dir während der Ausführung die Variableninhalte an und schau einfach zu was wann wie wo passiert.

Grüße
Thorsten