Zuviel Werbung? - > Hier kostenlos beim SPS-Forum registrieren

Ergebnis 1 bis 9 von 9

Thema: String in eine .txt schreiben/öffnen

  1. #1
    Registriert seit
    07.10.2010
    Beiträge
    9
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hi Leute,
    ich habe ein Problem mit der SysLibFile.lib. Es soll der Text 'Hallo Welt' in die Datei C:\test.txt geschrieben werden, die Datei habe ich bereits erstellt und sie ist leer. Leider klappt das nicht, bekomme immer von hFile eine 0 zurück(Fehler) müsste ja eigentlich '-1' beim Zielsystem CoDeSys SP RTE (lautDoku).

    Komme einfach nicht weiter, für Eure Hilfe wäre ich sehr dankbar.
    Viele Grüße@all!

    IF speichern THEN
    (* Öffnen zum Daten schreiben *)
    hFile := SysFileOpen(FileName2,'w');
    anz_bytes:=SysFileWrite(File:= hFile ,Buffer:= ADR(Text),Size:=LEN(Text));
    hFileclose1:=SysFileClose(File :=hFile); (*schließen der Datei mit Datei-Nummer*)

    END_IF;
    Angehängte Grafiken Angehängte Grafiken
    Zitieren Zitieren String in eine .txt schreiben/öffnen  

  2. #2
    Registriert seit
    08.10.2010
    Beiträge
    107
    Danke
    6
    Erhielt 15 Danke für 15 Beiträge

    Standard

    Hallo,

    das ganze Geheimniss ist:

    Du musst eine steigende Flanke einfügen:

    VAR
    R_TRIG_Save: R_TRIG;
    speichern: BOOL;
    Text: STRING := 'Hallo Welt';
    hFile: DWORD;
    anz_bytes: DWORD;
    hFileclose1: BOOL;
    END_VAR

    R_TRIG_Save(CLK:=speichern );
    IF R_TRIG_Save.Q THEN
    (* Öffnen zum Daten schreiben *)
    hFile := SysFileOpen('c:\temp\neu.txt','w');
    anz_bytes:=SysFileWrite(File:= hFile ,Buffer:= ADR(Text),Size:=LEN(Text));

    hFileclose1:=SysFileClose(File :=hFile);
    (*schließen der Datei mit Datei-Nummer*)
    END_IF


    So sollte es funktionieren ...

  3. #3
    Registriert seit
    12.04.2010
    Beiträge
    300
    Danke
    22
    Erhielt 54 Danke für 52 Beiträge

    Standard

    Zitat Zitat von KvT Beitrag anzeigen
    Hallo,

    das ganze Geheimniss ist:

    Du musst eine steigende Flanke einfügen:
    Hallo, verstehe ich nicht.... er macht das halt jeden Zyklus bis die 'speichern' wieder 0 ist.
    Sollte aber nicht der Grund dafür sein dass das schreiben nicht geht.

    Vielleicht brauchts ja eine explizite Angabe eine bestehende Datei zu überschreiben falls sie schon existiert, in Richtung 'w+' oder 'overwrite' ? 'w' bedeutet ja eigentlich nur schreiben, nicht überschreiben....

    bg
    bb

    vergessen!
    warum kommt da eigentlich kein Fehler zurück der beschreibt was das Problem ist... steht da vielleicht noch irgendwo ein Info diesbezüglich ?
    Geändert von bits'bytes (18.11.2010 um 18:32 Uhr) Grund: vergessen!

  4. #4
    Registriert seit
    10.05.2005
    Beiträge
    1.996
    Danke
    220
    Erhielt 233 Danke für 204 Beiträge

    Standard

    Hi


    Schau doch mal hier hinein.

    Hier ist eine alte Library von mir.


    Quelltextoffen.

    Also mal öffnen und ausdrucken.
    Auch Hinweise zur vorgehensweise sind enthalten.



    ACHTUNG. Diese wird von mir NICHT mehr gepflegt.
    (Da in naher Zukunft die www.OSCAT.DE das Dateihandling können wird.)




    http://www.magnia.de/index.php?optio...d=50&Itemid=53


    Zitat von KvT
    Hallo,

    das ganze Geheimniss ist:

    Du musst eine steigende Flanke einfügen:
    Es ist schon etwas mehr als 1 Geheimnis/Hürden



    Gruß Karl
    Karl

  5. Folgender Benutzer sagt Danke zu gravieren für den nützlichen Beitrag:

    KvT (19.11.2010)

  6. #5
    Conroe ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    07.10.2010
    Beiträge
    9
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Besten Dank für eure Antworten!
    Hab jetzt die Problematik meines Codes verstanden ->Befehle benötigen mehrere Zyklen. Bei meinem Code öffne, schreibe und schließe ich Xmal in der Sekunde.

    Werd weiter dran bleiben und berichten sobald die Sache läuft

    Schönes WE!

  7. #6
    Conroe ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    07.10.2010
    Beiträge
    9
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Schließen!

    Lösung gefunden: 1.RTE starten 2 Kommunikationsparameter fertig tut.

    Grüße

  8. #7
    Registriert seit
    21.11.2011
    Beiträge
    1
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hallo,

    ich sitze gerade vor dem gleichen Problem, wie oben beschrieben.
    Ich will Daten, die in einem String stehen, in eine externe (CSV-Datei) schreiben.
    Mein Problem ist, dass sich die Datei nicht mal öffnet. Ich hab es mit den Befehlen: SysFileOpen, -Write, -Close versucht.
    Kann mir jemand einen Tipp geben, was man bei den Befehlen besonders beachten muss?

    Vielen Dank
    Grüße

  9. #8
    Registriert seit
    10.05.2005
    Beiträge
    1.996
    Danke
    220
    Erhielt 233 Danke für 204 Beiträge

    Standard

    Hi

    Identische Hardware ?

    Welcher Controller ?


    Gruß Karl
    Karl

  10. #9
    Registriert seit
    08.10.2010
    Beiträge
    107
    Danke
    6
    Erhielt 15 Danke für 15 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hi,

    die Lösung steht eigentlich schon hier in den Beiträgen. In dem Code (vielleicht machst Du Ihn mal für alle sichtbar) öffnest D ständig eine Datei. Das darf aber nur genau einmal geschehen. -> Steigende Flanke. Dann Schreiben udn einmalig schließen ... Wie eigentlich alle schon beschrieben haben ...

Ähnliche Themen

  1. Mit Applicom String in S7 schreiben
    Von reini69 im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 17.10.2011, 23:57
  2. String in eine Datei schreiben beim CP
    Von olitheis im Forum CODESYS und IEC61131
    Antworten: 18
    Letzter Beitrag: 30.11.2010, 08:53
  3. Konstante String in Variable String schreiben
    Von sailor im Forum Simatic
    Antworten: 8
    Letzter Beitrag: 07.12.2009, 18:01
  4. Texte aus SPS als string schreiben
    Von nonguru im Forum HMI
    Antworten: 5
    Letzter Beitrag: 03.02.2008, 22:08
  5. Antworten: 3
    Letzter Beitrag: 23.05.2005, 11:34

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •