![]() |
![]() |
|
![]() |
![]() |
|
Programmierung Rat & Tat für Programmierer |
![]() |
|
Themen-Optionen | Ansicht |
![]() |
#1 |
Master
![]() |
![]() SO ist zwar einen blöde frage, aber welche befehle zum öffnen von dateien gibt es in visual basic genau. Die Methode zum Binary Öffen kann ich, die geht ~ so:
---- Dateiname$ = (uploadliste) Nr = FreeFile Open Dateiname$ For Binary As Nr Fileinhalt$ = Space$(LOF(Nr)) Get #Nr, , Fileinhalt$ Close Nr ---- Aber es gibt noch andere arten, output, input... Wie kann ich mit diesen Befehlen den ganzen Inhalt einer Datei auslesen? Im Internet finde ich nichts sinnvolles. Ich müsste dann Den ganzen Inhalt der Datei (zB Inhalt mp3 File)in eine Textbox schreiben.
____________________________________
http://www.schmausen.at Dein Infoportal für Mittagsmenüs in Klagenfurt |
![]() |
![]() |
![]() |
#2 |
Veteran
![]() |
![]() Das öffnen an sich ist meist immer das gleiche.
Wie du schon sagstest "Open ...." Und dann kannst du noch auf verschiedenen arten lesen (am besten aus der hilfe raussuchen mit den unteren schlüsselwörtern): Line Input Read ReadLine ReadAll Input ... Den inhalt einer ganzen datei liest du auf einen rutscher mit Object.ReadAll ein (braucht aber viel speicher unter umständen). http://www.vb-world.net/files/openstatement/ http://pub13.ezboard.com/fvisualbasi...icID=869.topic Und etwas Bsp. code wenn du ein textfeld füllen willst mit einer ganzen datei (freefile methode): Dim filenumber As Integer, length As Long filenumber = Freefile Open filename for Input as filenumber length = LOF(filenumber) If length < 32767 Then Text1.Text = Input$(length, filenumber) Else MsgBox "This file is longer than 32Kb" EndIf Close filenumber Viel Spass (V)uh
____________________________________
Diese signatur ist optional ! |
![]() |
![]() |
![]() |
#3 |
Master
![]() |
![]() Danke für die Info, cih werds gleich austesten
![]()
____________________________________
http://www.schmausen.at Dein Infoportal für Mittagsmenüs in Klagenfurt |
![]() |
![]() |
![]() |
#4 |
Master
![]() |
![]() Aber ich will das file binär öffnen und in ein textfeld ausgeben, aber bei mp3 files hab ich ein problem, er schreibt mir nur 4 zeichen hin, obwohl es viel mehr sind!
____________________________________
http://www.schmausen.at Dein Infoportal für Mittagsmenüs in Klagenfurt |
![]() |
![]() |
![]() |
#5 |
Veteran
![]() |
![]() Du kannst auch den kompletten inhalt eines MP3 files nicht in ein text feld schreiben weil es vermutlich zu gross ist. Eine textbox kann nur eine bestimmt anzahl von daten daten aufnehmen. Da dein MP3 aber vermulich mehr als 1MB hat ...
Siehe auch zeile vom letzten posting: If length < 32767 Then ... Mehr erfolg würde vermutlich ein spezielles OCX bringen, wobei ich dir jetzt auf anhieb keines empfehlen könnte. Ich würde es mit dem RTF control versuchen. Auch kannst du von manchen binären files nix zeilenweise einlesen, das musst du zeichenweise machen. Viel erfolg (V)uh
____________________________________
Diese signatur ist optional ! |
![]() |
![]() |
![]() |
#6 |
Schwarzfußfrettchen
![]() Registriert seit: 28.01.2001
Beiträge: 2.071
|
![]() a=filesize ( filename)
s = space$(a) ' string auf die dateilänge bringen nr=freefile ' ned unbedingt notwendig... open filename for binary as nr get nr,,s close nr zum schreiben: open filename for binary as nr put nr,,s close nr file brauchst ned unbedingt dazwischen zu schliessen weil binary erlaubt gleichzeitiges lesen und schreiben.
____________________________________
Wann die kan Almdudler ham... \"Es gibt nur einen Weg zur Lunge, und der muss geteert werden, damit der Krebs nicht stolpert!\" http://www.dream.at/gizmo/bunny.gif Image is © 2001 Merle Sterndalsäg.. ähh... jäger ![]() |
![]() |
![]() |
![]() |
#7 |
Master
![]() |
![]() konn i do sonst ned die zeilen von mp3 files einzeln auslesen? das würde auch schon helfen. pro zeile sind 1024 zeichen. Ist das mp3 file in einen ganzen Block abgespeichert, oder geht das mit den zeilen einzeln auch?
____________________________________
http://www.schmausen.at Dein Infoportal für Mittagsmenüs in Klagenfurt |
![]() |
![]() |
![]() |
#8 |
Schwarzfußfrettchen
![]() Registriert seit: 28.01.2001
Beiträge: 2.071
|
![]() a=filesize ( filename)
s = space$(1024) nr=freefile ' ned unbedingt notwendig... ' Datei Blockweise einlesen ... open filename for binary as nr Len=1024 for X=0 to a\1024+1 get nr,x,s list1.additem s,list1.listcount s=reverse(s) ' Hier ne pseudofunktion aufrufen (selberschreiben wennst sowas machen willst ![]() put nr,x,s ' und gleich wieder schreiben. next close nr Mit dieser methode kannst ein File Blockweise einlesen. Len=x gibt an wie groß die zu lesenden bzw zu schreibenden Blöcke sind. Du kannst hier einen Block einlesen, direkt manipulieren und sofort wieder zurückschreiben wenns sein muss ![]() reverse() ist hier nur als beispiel für eine selbstgeschriebene Funktion welche die daten manipuliert.
____________________________________
Wann die kan Almdudler ham... \"Es gibt nur einen Weg zur Lunge, und der muss geteert werden, damit der Krebs nicht stolpert!\" http://www.dream.at/gizmo/bunny.gif Image is © 2001 Merle Sterndalsäg.. ähh... jäger ![]() |
![]() |
![]() |
![]() |
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
|
|