Problemchen mit Writeline
Übersicht

KifferopaGastBetreff: Problemchen mit Writeline |
![]() Antworten mit Zitat |
|
---|---|---|
Writeline schreibt ja eine Zeile in eine Datei. Ich will aber eine bestehende Datei ergänzen! Und nicht den Inhalt überschreiben! Wie mache ich das?!? ![]() ![]() |
||
![]() |
BladeRunnerModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
OH -> filepos.
lesen, staunen, lernen ![]() |
||
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3 Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64 B3D BMax MaxGUI Stolzer Gewinner des BAC#48, #52 & #92 |
KifferopaGast |
![]() Antworten mit Zitat |
|
---|---|---|
Mann, woher soll ich das wissen!?! In der OH stand nichts von Filepos. Ich meine unten, wenn ich writeline genommen hab. Aber danke! ![]() |
||
KifferopaGast |
![]() Antworten mit Zitat |
|
---|---|---|
Ein Problem: Wenn ich das so mache, dann schreibt er nur die letzte Zeile in die Datei und die anderen nicht. Als ob der SeekFile-Befehl nicht da wäre! FilePos ermittelt ja nur die Position von irgendetwas. Kann mir mal jemand ein Programm schreiben, das alle zwei Zeilen einen Text in eine Datei schreibt? ![]() Code: [AUSKLAPPEN] Datei = WriteFile("Nur ein Test.test") SeekFile Datei,3 WriteLine Datei, "Die dritte Zeile(?)" SeekFile Datei,5 WriteLine Datei, "Sollte jetz die Fünfte sein..." SeekFile Datei,1 WriteLine Datei, "Die Erste? Oder fängt der hier auch mit null an?" CloseFile Datei |
||
Michi |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Aaaaalso:
wenn du mit Writeline einen String in eine datei speicherst, setzt er am Ende automatisch das Absatzzeichen. Mit Seekfile kannst du aber keine Zeilenposition angeben, sondern BYTE-positionen!!! Du schreibst also eine Zeile an die 3. Byte-Position. dann steht da: Code: [AUSKLAPPEN] Die dritte Zeile(?) wieso vier leerzeichen? ganz einfach: das erste ist Position 0 dann kommt die nächst Zeile an die 5te Position. das ist das "i" Code: [AUSKLAPPEN] DiSollte jetz die Fünfte sein... Dann an Pos 1: Code: [AUSKLAPPEN] "Die Erste? Oder fängt der hier auch mit null an?" Das einfachst ist, du schreibst einfach Zeile für Zeile aller der Reihe nach: Code: [AUSKLAPPEN] Datei = WriteFile("Nur ein Test.test") WriteLine Datei, "Die Erste? Oder fängt der hier auch mit null an?" WriteLine Datei, "" WriteLine Datei, "Die dritte Zeile(?)" WriteLine Datei, "" WriteLine Datei, "Sollte jetz die Fünfte sein..." CloseFile Datei end |
||
Aber..Wozu soll er gut sein???
IBM-Ingeneur über die Idee des Mikroprozessors, 1968 Code: [AUSKLAPPEN] __ <_/__\_> <--- die Wayne-Zeichnung |
KifferopaGast |
![]() Antworten mit Zitat |
|
---|---|---|
Achso! Seekfile ist für Leerzeichen! Stimmt, darum war das...aha...aber ich wollte das eigentlich so: Ich habe eine Textdatei...der Inhalt:
Gugu Gaga alululah bulahietsch! Und nachher soll das so aussehen: Gugu kotschie gaga alululah doof *hihi* bulahietsch! Aber ohne, dass ich das was schon drin stand nochmal schreibe! Also, er soll ja nur ab ´ner bestimmten Zeile anfangen zu schreiben, aber eben nicht das schon gescriebene ÜBERSCHREIBEN ![]() |
||
![]() |
Seoman |
![]() Antworten mit Zitat ![]() |
---|---|---|
Kifferopa hat Folgendes geschrieben: Kann mir mal jemand ein Programm schreiben, das ...
Vorsicht, mit solchen Sätzen macht man sich hier sehr schnell unbeliebt... mfg Seoman |
||
In Australien...
Projekte sind zur Zeit wieder eingefroren und auf Designlevel zurueckgestuft... Generalueberholungen notwendig ![]() |
KifferopaGast |
![]() Antworten mit Zitat |
|
---|---|---|
Wieso? | ||
![]() |
Artemis |
![]() Antworten mit Zitat ![]() |
---|---|---|
weil wir hier zum helfen sind, und nicht zum code schreiben
und weil man alles selber schreiben sollte -> du lernst!!! |
||
Apocalyptic |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Nimm OpenFile() statt WriteFile. Begründung sollte in der Onlinehilfe stehen. Und um ans Ende der Datei zu kommen, benutze das:Code: [AUSKLAPPEN] SeekFile FileStream,FileSize("C:\Blubb.txt")
|
||
Suum cuique
[ www.ffs-net.de.vu ] [ Raycaster ] |
- Zuletzt bearbeitet von Apocalyptic am Fr, März 04, 2005 20:21, insgesamt 2-mal bearbeitet
KifferopaGast |
![]() Antworten mit Zitat |
|
---|---|---|
Apocalyptic hat Folgendes geschrieben: Nimm OpenFile() statt WriteFile. Begründung sollte in der Onlinehilfe stehen. Und um ans Ende der Datei zu kommen, benutze das:Code: [AUSKLAPPEN]
SeekFile File,FileSize("C:\Blubb.txt")-1 Ja, das hilft mir aber wenig. Ich nehme ja openfile aber was dann? |
||
Apocalyptic |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Code: [AUSKLAPPEN] Path$="C:\Blubb.txt"
; Datei erstellen und irgendwas reinschreiben: File=WriteFile(Path) WriteLine File,"Bla." CloseFile File ; Und nochmal öffnen und was hintendranhängen File=OpenFile(Path) SeekFile File,FileSize(Path) WriteLine File,"Verstehst du jetzt?" CloseFile(File) ExecFile(Path) |
||
Suum cuique
[ www.ffs-net.de.vu ] [ Raycaster ] |
![]() |
RallimenSieger des 30-EUR-Wettbewerbs |
![]() Antworten mit Zitat ![]() |
---|---|---|
Also soetwas wie insert,
Sowas habe ich schon mal hier gepostet glaube ich Das war mit neuen Zeilen einfügen oder bestimmte Zeilen überschreiben und Auslesen von bestimmten Zeilen! Wenn Interesse besteht such ich mal meine HDD durch und poste das hier! |
||
[BB2D | BB3D | BB+]
|
KifferopaGast |
![]() Antworten mit Zitat |
|
---|---|---|
Apocalyptic hat Folgendes geschrieben: Code: [AUSKLAPPEN]
Path$="C:\Blubb.txt"
; Datei erstellen und irgendwas reinschreiben: File=WriteFile(Path) WriteLine File,"Bla." CloseFile File ; Und nochmal öffnen und was hintendranhängen File=OpenFile(Path) SeekFile File,FileSize(Path) WriteLine File,"Verstehst du jetzt?" CloseFile(File) ExecFile(Path) Hmm...das ist gut...aber ich verstehe immer noch nicht wie ich das "Verstehst du jetzt?" in die dritte Zeile setze, also, dass in der 2. nichts steht... |
||
Michi |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
entweder mit Writeline Datei, "" oder mit Writebyte Datei, 13 und danach Writebyte Datei, 10
das ergebnis ist das gleiche zur Erläuterung: die Bit-Folge 000000000000000000001010 000000000000000000001101 (=10 und danach 13 im Dezimalsystem) wird von Microsoft Editor als Absatz interpretiert (Und von allen anderen Text-Verarbeitungsprogrammen glaub ich auch) In der Datei selbst gibt es keine Absätze !!! Die gibt es nur im Editor!!! In der Datei stehen alle Zeichen als Bit-Folgen hintereinander!!! folgender Text Code: [AUSKLAPPEN] Hallo, & Tschüss! ist auf der Festplatte (als Dezimalzahlen): Code: [AUSKLAPPEN] 72 97 108 108 111 130 13 10 38 13 10 84 115 99 104 252 115 115 du kanns es mal ausprobieren: lass diese Zahlfolge mal Zahl für Zahl mit Writebyte in eine Datei eintragen und öffne diese dann mit dem editor. Nur so nebenbei: Code: [AUSKLAPPEN] 00000000000000000000000001001000 00000000000000000000000001100001 00000000000000000000000001101100 00000000000000000000000001101100 00000000000000000000000001101111 00000000000000000000000010000010 00000000000000000000000000001101 00000000000000000000000000001010 00000000000000000000000000100110 00000000000000000000000000001101 00000000000000000000000000001010 00000000000000000000000001010100 00000000000000000000000001110011 00000000000000000000000001100011 00000000000000000000000001101000 00000000000000000000000011111100 00000000000000000000000001110011 00000000000000000000000010011011 So sieht das Ganze als einzelne Bit's aus ^^ (natürlich hab ich die leerzeichen nur ergänzt, um immer 4 Bytes (= ein Buchstabe) zu kennzeichnen |
||
Aber..Wozu soll er gut sein???
IBM-Ingeneur über die Idee des Mikroprozessors, 1968 Code: [AUSKLAPPEN] __ <_/__\_> <--- die Wayne-Zeichnung |
KifferopaGast |
![]() Antworten mit Zitat |
|
---|---|---|
Ja, ja is ok. Danke für eure Hife. ![]() |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group