Programmieren - alles kontrollieren 4.941 Themen, 20.708 Beiträge

Drucken unter DOS, Hiiiiiiilffeeeeeeee?????

BDelphi / 5 Antworten / Baumansicht Nickles

Hallo nochmal an alle die mir vielleicht helfen können,

ich habe immer noch das Problem, das ich eine bestimmte Datei nicht ausdrucken kann, es geht - soviel steht fest!
Aber, und das ist der knausus knaksus
an einer bestimmten stelle muß ein Zeilenumbruch statt finden, und ich komme einfach nicht drauf.
Ich habe hier einen kleinen Auszug, die Druckroutine:

ascii = ordnungszahl;
if((au_kan = fopen(DATEI,"r")) == NULL)
{
fputs("Fehler beim Lesen der Datei!\\n", stderr);
}
else
{
fputs("Inhalt der Datei ",stdprn);
fputs(DATEI,stdprn);
fprintf(stdprn,":\\n\\n");

while (( ascii = fgetc( au_kan)) != EOF )
{
fputc(ascii, stdprn);
if(ascii == 16) fprintf(stdprn,"\\n");
}
putc(ascii,stdprn);
fclose(au_kan);
}

return(0);
}
Hat jemand einen Rat für mich?
Danke schon mal im vorraus
Gruß Thorsten :-)

bei Antwort benachrichtigen
thomas woelfer BDelphi „Drucken unter DOS, Hiiiiiiilffeeeeeeee?????“
Optionen

zeilenumbruch := \r\n

(\r carriage return -> druckkopf nach vorne, \n -> druckkopf in naechste zeile...)

WM_HOPETHISHELPS
thomas woelfer

this posting contains no tpyos.
bei Antwort benachrichtigen
BDelphi thomas woelfer „zeilenumbruch : r n r carriage return - druckkopf nach vorne, n - druckkopf in...“
Optionen

Hallo,

ich weiß Du wirst mich fuer bescheuert halten, aber nichts funzt.
Ich habe jetzt einige Tage ausprobiert, alles mögliche - es geht nichts! Ich verstehe das nicht?! Kann es vieleicht sein das die Datei, die geschrieben wird mit zeilenumbrüchen richtig formatiert werden muß,denn wenn ich die Textdatei im Editor Öffne ist alles kreuz und quer durcheinander, es steht nichts untereinander, so wie es mir am Bildschirm, wo es völlig richtig ist, ausgegeben wird.
Hast Du oder wer das ließt noch einen Vorschlag für mich?
Danke schon mal im vorraus :-)
Gruß Thorsten

Hier noch mal der gesammte Quelltext:

#include

bei Antwort benachrichtigen
thomas woelfer BDelphi „Drucken unter DOS, Hiiiiiiilffeeeeeeee?????“
Optionen

>> habe jetzt einige Tage ausprobiert, alles mögliche - es geht nichts! Ich verstehe das nicht?! Kann es vieleicht sein das die

ich weiss leider nicht so genau _was_ denn nun eigentlich nicht geht.

>> Datei, die geschrieben wird mit zeilenumbrüchen richtig

natuerlich :)

>> formatiert werden muß,denn wenn ich die Textdatei im Editor Öffne ist alles kreuz und quer durcheinander, es steht nichts untereinander, so wie es mir am Bildschirm, wo es völlig richtig

frage: wo ist denn der unterschied zwischen 'texteditor' und 'bildschirm' ?

wenn dein editor jedenfalls keine 'spalten' berücksichtigt, dann bedeutet das mit recht grossser sicherheit, das die datei keine 'richtigen' cr-lf paar enthaelt. die musst du dann eben an den 'richtigen' stellen (wo immer die sind) reinbauen.

WM_HOPETHISHELPS
thomas woelfer



this posting contains no tpyos.
bei Antwort benachrichtigen
BDelphi thomas woelfer „ habe jetzt einige Tage ausprobiert, alles mögliche - es geht nichts! Ich...“
Optionen

Hallo,

also was ich meine mit Texteditor die Datei 'Zeisa.txt' und mit Bildschirm meine ich den DOS-Bildschirm.
Im ersten Teil des Programms wird ja die besagte Datei geschrieben, und im zweiten teil wieder aufgerufen und am Bildschirm angezeigt mit einer kleinen Pause nach der 7ten doppelzeile und im letzten teil soll dieser halt ausgedruckt werden und eben dies geht nicht.
Wenn der Drucker siene Arbeit beginnt, druckt er nur den Dateinamen und die erste Zeile ' 32 33 34 .... 47' danach ist Schluss!?
Ich verstehe einfach nicht warum, was mir am DOS-Bildschirm richtig angezeigt wird, kommt nicht so auf ein Stück Papier!
Das ist lächerlich, wahrscheinlich nur eine kleine Quelltextzeile, aber ich komme nicht drauf???
Gruß Thorsten

bei Antwort benachrichtigen
thomas woelfer BDelphi „Hallo, also was ich meine mit Texteditor die Datei Zeisa.txt und mit Bildschirm...“
Optionen

schick mir einfach mal den quellcode per mail.

WM_L8R
thomas woelfer

this posting contains no tpyos.
bei Antwort benachrichtigen