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:

Leerzeichen löschen

 
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
K.I.T.T.



Anmeldungsdatum: 24.01.2005
Beiträge: 79

BeitragVerfasst am: 13.05.2006, 16:07    Titel: Leerzeichen löschen Antworten mit Zitat

Moin,
ich weiß, dass man mit LTRIM$ und RTRIM$ und so Leerzeichen löschen kann. Aber bei mir geht das nicht.

Code:

PRINT "o"
INPUT "bla: ", VAR1
INPUT "bla: ", VAR 2
INPUT "bla: ", VAR 3
INPUT "bla: ", VAR 4
INPUT "bla: ", VAR 5
INPUT "bla: ", VAR 6
INPUT "bla: ", VAR 7
PRINT #1, "opref ", VAR1, VAR2, VAR3, VAR4, VAR5, VAR6, VAR7
CLOSE 1
INPUT "ENTER drücken... ", eingabe$
END


Natürlich ist das nicht der ganze Code. Das ist nur ein Teil und das mit der Datei öffnen und das darein schreiben geht. Die Variablen sind natürlich auch nicht echt. Man soll da Zahlen eingeben und wenn man das Programm dann beendet hat, speichert er das in einer Textdatei. Wenn ich die Textdatei dann angucke, dann sind zwischen den Zahlen tausend Leerzeichen. Wie ich die wegkriege mit LTRIM und so, weiß ich leider nicht.

Danke schon mal für die Hilfe.

Gruß K.I.T.T.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Michael712
aka anfänger, programmierer


Anmeldungsdatum: 26.03.2005
Beiträge: 1593

BeitragVerfasst am: 13.05.2006, 16:40    Titel: Antworten mit Zitat

Hallo, das liegt an der Print anweisung.
Wenn man die variablen mit nem "," trennt, dann sind dazwischen große abstände. Wenn man jedoch ein ";" nimmt, dann nicht. Bei dir wäre es dann so:

Code:
Print #1, "opref ";VAR1;VAR2;VAR3;VAR4;.......


Fall dazwischen immer noch ein leerzeichen sein sollte, dann musst du folgendes schreiben:

Code:
Print #1, "opref ";Str(var1);Str(var2);......



Näheres dazu in der Referenz
Michael
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
K.I.T.T.



Anmeldungsdatum: 24.01.2005
Beiträge: 79

BeitragVerfasst am: 13.05.2006, 17:38    Titel: Antworten mit Zitat

Danke, hat geholfen happy. Jetzt aber nochmal eine andere Frage: Ich möchte ja nun eine Datei öffnen, bzw. wenn die noch nicht da ist, anlegen. Das ist ja leicht: OPEN "C:\bla.txt" ...
Ich möchte aber, dass die Datei nach einer vorherigen Eingabe benannt wird. Also:
PRINT "Dateinmane eingeben: ", name$
OPEN name$ oder sowas.
Die Frage ist jetzt, wie geht das? Oder besser, geht das überhaupt?

Gruß K.I.T.T.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
jb



Anmeldungsdatum: 14.01.2005
Beiträge: 2010

BeitragVerfasst am: 13.05.2006, 17:41    Titel: Antworten mit Zitat

Ja klar. Einfach mit
Code:

INPUT "Dateiname: "; dateiname$
OPEN dateiname FOR OUTPUT AS #1

Dabei wird - sollte es eine Datei mit dem angegebenen Namen geben - diese aber überschrieben.
Des Weiteren wird diese Datei dann im aktuellen Arbeitsverzeichnis erstellt, eine komplette Pfadangabe wäre also sinnvoller...

jb
_________________
Elektronik und Programmieren
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Michael Frey



Anmeldungsdatum: 18.12.2004
Beiträge: 2577
Wohnort: Schweiz

BeitragVerfasst am: 13.05.2006, 19:11    Titel: Antworten mit Zitat

Zitat:
Des Weiteren wird diese Datei dann im aktuellen Arbeitsverzeichnis erstellt, eine komplette Pfadangabe wäre also sinnvoller...

Das hat aber andere Nachteile.
Codiert man hart auf die "eignen Dateien" seines System, führt das auf fremden Systemen fast zwangslaufig zu ärger.
(z.B. weil andere Windows Variante, keine Recht zu schreiben auf den Pfad etc.)
_________________
http://de.wikibooks.org/wiki/FreeBasic Jede Hilfe für dieses Buch ist Willkommen!
http://de.wikibooks.org/wiki/FreeBasic:_FAQ FAQ zu Freebasic (im Aufbau, hilfe Willkommen)
Neu mit Syntax Highlight
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
K.I.T.T.



Anmeldungsdatum: 24.01.2005
Beiträge: 79

BeitragVerfasst am: 13.05.2006, 19:26    Titel: Antworten mit Zitat

Kann ich denn noch einen Pfad angeben?

Gruß

EDIT: Wie kann ich das Dateiformat bestimmen?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Michael Frey



Anmeldungsdatum: 18.12.2004
Beiträge: 2577
Wohnort: Schweiz

BeitragVerfasst am: 13.05.2006, 19:34    Titel: Antworten mit Zitat

Zitat:
Kann ich denn noch einen Pfad angeben?

Ja klar.
Entweder der Benutzer Tippt in ein oder du gibt ihn mit z.B. mit
Code:
OPEN "C:\"+dateiname$ FOR OUTPUT AS #1

vor das es auf C:\ gespeichert wird.
Der Nachteil ist einfach, das der Normale Benutzer den Pfad dann nicht ändern kann.

Zitat:
EDIT: Wie kann ich das Dateiformat bestimmen?

Wie ist das gemeint?
Die Datei erweiterung (.Dat, .Bas, .TXT) kannst du einfach beim Dateinamen anhängen.
Geht es darum, ein bestimmtes Format zu laden und oder zu speichern kommst immer darauf an.
(.BMP Datein öffnet man ganz anders als eine Text Datei)

Formuliere die Frage genauer.
_________________
http://de.wikibooks.org/wiki/FreeBasic Jede Hilfe für dieses Buch ist Willkommen!
http://de.wikibooks.org/wiki/FreeBasic:_FAQ FAQ zu Freebasic (im Aufbau, hilfe Willkommen)
Neu mit Syntax Highlight
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
K.I.T.T.



Anmeldungsdatum: 24.01.2005
Beiträge: 79

BeitragVerfasst am: 13.05.2006, 19:39    Titel: Antworten mit Zitat

Ich mein, wenn ich jetzt z. B. die Datei von Anfang an benenne, also OPEN "C:\bla.txt", dann habe ich ja eine Textdatei. Wenn ich aber jetzt eine Variabel als Dateinamen nehme, kann ich nicht auswählen, ob das Txt oder sonstwas sein soll.

Gruß
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Michael Frey



Anmeldungsdatum: 18.12.2004
Beiträge: 2577
Wohnort: Schweiz

BeitragVerfasst am: 13.05.2006, 19:42    Titel: Antworten mit Zitat

Doch?!
Mach doch einfach:
Code:
INPUT "Dateiname: "; dateiname$
OPEN dateiname$+".txt" FOR OUTPUT AS #1

_________________
http://de.wikibooks.org/wiki/FreeBasic Jede Hilfe für dieses Buch ist Willkommen!
http://de.wikibooks.org/wiki/FreeBasic:_FAQ FAQ zu Freebasic (im Aufbau, hilfe Willkommen)
Neu mit Syntax Highlight
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
K.I.T.T.



Anmeldungsdatum: 24.01.2005
Beiträge: 79

BeitragVerfasst am: 13.05.2006, 19:45    Titel: Antworten mit Zitat

OK, danke, wie geht das mit dem Pfad selber eingeben? Ich hätte gedacht, dass man INPUT macht, dann den Pfad eingeben muss und irgendwie mit in OPEN reinpackt...

Gruß
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Michael Frey



Anmeldungsdatum: 18.12.2004
Beiträge: 2577
Wohnort: Schweiz

BeitragVerfasst am: 13.05.2006, 19:59    Titel: Antworten mit Zitat

Code:
Input "Pfad: "; Pfad$
INPUT "Dateiname: "; dateiname$
OPEN Pfad$+dateiname$+".txt" FOR OUTPUT AS #1

So sollte es gehen.
_________________
http://de.wikibooks.org/wiki/FreeBasic Jede Hilfe für dieses Buch ist Willkommen!
http://de.wikibooks.org/wiki/FreeBasic:_FAQ FAQ zu Freebasic (im Aufbau, hilfe Willkommen)
Neu mit Syntax Highlight
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
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