Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

Wie viele Zeilen hat eine textdatei?

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu FreeBASIC.
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
King-01
gesperrt


Anmeldungsdatum: 26.02.2007
Beiträge: 351

BeitragVerfasst am: 06.09.2007, 11:43    Titel: Wie viele Zeilen hat eine textdatei? Antworten mit Zitat

Hi,

wie kann man mit FB (0.18 ) herausfinden, wieviele zeile z.B. die datei "text.txt" hat?
_________________
[quote="IRC"](22:41:56)<PMedia>Jojo, hats nen Grund warum wir chatten obwohl du grad neben mir sitzt?
...
(23:00:59)<PMedia>USB war erst als Waffe geplant[/quote]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Eternal_pain



Anmeldungsdatum: 08.08.2006
Beiträge: 1783
Wohnort: BW/KA

BeitragVerfasst am: 06.09.2007, 11:45    Titel: Antworten mit Zitat

die vermutlich einfachste weise waere wohl die txt statt im Editor in die IDE zu laden... da kanst dann gucken ohne selbst zu zaehlen
_________________
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen MSN Messenger
King-01
gesperrt


Anmeldungsdatum: 26.02.2007
Beiträge: 351

BeitragVerfasst am: 06.09.2007, 11:47    Titel: Re: Wie viele Zeilen hat eine textdatei? Antworten mit Zitat

King-01 hat Folgendes geschrieben:
wie kann man mit FB (0.18 ) herausfinden, wieviele zeile z.B. die datei "text.txt" hat?


edit: die menge der zeilen soll in einer variable gespeichert werden.
_________________
[quote="IRC"](22:41:56)<PMedia>Jojo, hats nen Grund warum wir chatten obwohl du grad neben mir sitzt?
...
(23:00:59)<PMedia>USB war erst als Waffe geplant[/quote]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
nemored



Anmeldungsdatum: 22.02.2007
Beiträge: 4704
Wohnort: ~/

BeitragVerfasst am: 06.09.2007, 11:51    Titel: Antworten mit Zitat

Ich vermute mal, die einzige Möglichkeit wird sein, die Datei zum Lesen zu öffnen, über LINE INPUT alle Zeilen auszulesen (müssen ja nicht gespeichert werden) und dabei die Anzahl der Zeilen zu zählen.
_________________
Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
King-01
gesperrt


Anmeldungsdatum: 26.02.2007
Beiträge: 351

BeitragVerfasst am: 06.09.2007, 11:55    Titel: Antworten mit Zitat

also mein code sieht jetzt so aus:

Code:

open file for input as #1
for i = 1 to rows
    line input #1, ln(i)
next


in der variable "rows" soll jetzt die zeilenanzahl stehen.
Wie mach ich das da.
_________________
[quote="IRC"](22:41:56)<PMedia>Jojo, hats nen Grund warum wir chatten obwohl du grad neben mir sitzt?
...
(23:00:59)<PMedia>USB war erst als Waffe geplant[/quote]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Eternal_pain



Anmeldungsdatum: 08.08.2006
Beiträge: 1783
Wohnort: BW/KA

BeitragVerfasst am: 06.09.2007, 11:58    Titel: Antworten mit Zitat

Code:
Dim as string bla
Dim as UByte Ptr blabla

Open "ttt.txt" for binary as #1
blabla=Allocate(Lof(1)+1)
get #1,,*blabla,Lof(1)
Close #1

bla=*blabla

Dim Count as Integer
Dim Countx as uInteger
Dim Found as Integer


Do
 Found=0
 If Instr(1+Countx,bla,!"\r\n") Then
     Countx=Instr(1+Countx,bla,!"\r\n")+1
     Count+=1
     Found=1
 End If
 
Loop while Found

?Count

sleep

_________________
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen MSN Messenger
nemored



Anmeldungsdatum: 22.02.2007
Beiträge: 4704
Wohnort: ~/

BeitragVerfasst am: 06.09.2007, 12:00    Titel: Antworten mit Zitat

Und warum machst du es dann nicht gleich mit
Code:
DO WHILE NOT EOF(1)
  i += 1
  LINE INPUT #1, ln(i)
LOOP

_________________
Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Eternal_pain



Anmeldungsdatum: 08.08.2006
Beiträge: 1783
Wohnort: BW/KA

BeitragVerfasst am: 06.09.2007, 12:01    Titel: Antworten mit Zitat

Warum denn einfach wenns auch kompliziert geht durchgeknallt
_________________
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen MSN Messenger
nemored



Anmeldungsdatum: 22.02.2007
Beiträge: 4704
Wohnort: ~/

BeitragVerfasst am: 06.09.2007, 12:02    Titel: Antworten mit Zitat

Aber zugegeben, deine Methode hat was. grinsen

edit: Zähle lieber nur die \n anstatt der \r\n, dann ist es UNIX-komplatibel
_________________
Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Eternal_pain



Anmeldungsdatum: 08.08.2006
Beiträge: 1783
Wohnort: BW/KA

BeitragVerfasst am: 06.09.2007, 12:07    Titel: Antworten mit Zitat

Dafuer ist Deine Methode schon wieder so einfach das ich nichtmal drauf gekommen bin grinsen durchgeknallt
_________________
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen MSN Messenger
King-01
gesperrt


Anmeldungsdatum: 26.02.2007
Beiträge: 351

BeitragVerfasst am: 06.09.2007, 12:07    Titel: Antworten mit Zitat

ok, danke für eure antworten.
noch schnell ne kleine frage: wie deklariert man nochmal arrays?
_________________
[quote="IRC"](22:41:56)<PMedia>Jojo, hats nen Grund warum wir chatten obwohl du grad neben mir sitzt?
...
(23:00:59)<PMedia>USB war erst als Waffe geplant[/quote]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Eternal_pain



Anmeldungsdatum: 08.08.2006
Beiträge: 1783
Wohnort: BW/KA

BeitragVerfasst am: 06.09.2007, 12:09    Titel: Antworten mit Zitat

Die Frage meinst Du jetzt nicht wirklich ernst durchgeknallt

Dim meinarray (von to bis[,von to bis[,von to bis]]) as Typ

Also als beispiel ein 1 dimensionales:
Code:
Dim MeinArray (0 to 99) as String

Da hast platz fuer hundert reihen grinsen
_________________
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen MSN Messenger
nemored



Anmeldungsdatum: 22.02.2007
Beiträge: 4704
Wohnort: ~/

BeitragVerfasst am: 06.09.2007, 12:10    Titel: Antworten mit Zitat

Code:
DIM array(anz) AS DATATYP

also z. B.
Code:
DIM bla(500) AS INTEGER

oder
Code:
DIM bla(12 TO 17) AS INTEGER


(war so viel Tipparbeit, dass ich langsamer war ...)
_________________
Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
King-01
gesperrt


Anmeldungsdatum: 26.02.2007
Beiträge: 351

BeitragVerfasst am: 06.09.2007, 12:13    Titel: Antworten mit Zitat

Eternal_pain hat Folgendes geschrieben:
Die Frage meinst Du jetzt nicht wirklich ernst durchgeknallt


ich weiß. durchgeknallt aber ich hab lange nicht mehr mit arrays gearbeitet. das letzte mal, als ich mit arrays gearbeitet habe, hab ich noch in qb programmiert.

Aber bei mir kommt jetzt ne fehlermeldung: Invalid data types in 'line input #1, ln(i)'. ??? Bei mir ist i integer und ln ist integer.
_________________
[quote="IRC"](22:41:56)<PMedia>Jojo, hats nen Grund warum wir chatten obwohl du grad neben mir sitzt?
...
(23:00:59)<PMedia>USB war erst als Waffe geplant[/quote]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Eternal_pain



Anmeldungsdatum: 08.08.2006
Beiträge: 1783
Wohnort: BW/KA

BeitragVerfasst am: 06.09.2007, 12:16    Titel: Antworten mit Zitat

ist klar... weil ln String sein muss... du machst da eine TXT und laedst mit Line Input... wenn da nur zahlen drinne waere, waers ja was anderes... aber so nicht grinsen
_________________
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen MSN Messenger
King-01
gesperrt


Anmeldungsdatum: 26.02.2007
Beiträge: 351

BeitragVerfasst am: 06.09.2007, 12:17    Titel: Antworten mit Zitat

ups, danke. habs übersehen happy
_________________
[quote="IRC"](22:41:56)<PMedia>Jojo, hats nen Grund warum wir chatten obwohl du grad neben mir sitzt?
...
(23:00:59)<PMedia>USB war erst als Waffe geplant[/quote]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu FreeBASIC. Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz