Forum: PC-Programmierung Einfache Stringoperationen mit Visual Basic


von Michael K. (Gast)


Lesenswert?

Hallo zusammen,

für mein Projekt müsste ich ein CSV-File in ein C-Header-File (char 
Array) "umpuhlen", d.h. ein paar Wörter und geschweifte Klammern bzw. 
Semikola hinzufügen). Wie leicht/schwer lässt sich sowas mit Visual 
Basic erledigen?

Hat vielleicht jemand einen Tipp, wo ich Informationen hierzu bekommen 
könnte? Oder kennt jemand eine einfachere Methode als mit VB?


Vielen Dank!

Michael

von Udo N. (weinbauer73)


Lesenswert?

Es ist eigentlich recht einfach. Das File als String einlesen, vorher 
und nachher einen String hinzufügen.

Da ich gerade kein VB zur Verfügung habe, sollte folgendes reichen:
1
Dim fso As New FileSystemObject
2
Dim ts As TextStream
3
dim row as string
4
5
'Open file.
6
Set ts = fso.OpenTextFile(FILE)
7
'Loop while not at the end of the file.
8
Do While Not ts.AtEndOfStream
9
   row = ts.ReadLine
10
   ' Mach was mit dem String row
11
   ' Mit & verkettet man die einzelnen Strings
12
   ' z.B. text = text & row
13
Loop
14
'Close the file.
15
ts.Close

Die DO..LOOP-Schleife liest die Datei zeilenweise ein. Nach 
OpenTextFile() steht der Dateizeiger auf Anfang der Datei und damit auf 
der ersten Zeile. Mit Stringoperatoren und -funktionen kannst du dann 
deinen Teil erstellen. Die writeline-Funktion würde dann deinen String 
neu schreiben.

http://www.virtualsplat.com/tips/visual-basic-fso.asp

PS: Für sowas wäre Perl ideal ;-)

von Michael K. (Gast)


Lesenswert?

Hallo Udo,


vielen Dank, mit so einer detaillierten Antwort habe ich gar nicht 
gerechnet :)

Ich werde VB morgen mal besorgen und installieren und das dann 
ausprobieren.

Wieso VB: Ich bin in C nur im Embedded-Bereich unterwegs und habe von 
Windows-Programmierung leider keine Ahnung. Vor ca. 10 Jahren habe ich 
mal was mit VBA in Access gemacht und in Erinnerung behalten, dass es 
relativ einfach verständlich war und man schnell zu Ergebnissen kommt.

Darf ich fragen, was mit Perl besser / einfacher wäre?


Vielen Dank nochmal!

von Karl H. (kbuchegg)


Lesenswert?

Michael K. schrieb:

> Wieso VB: Ich bin in C nur im Embedded-Bereich unterwegs

Na ja. Was spricht dann dagegen, sich auf dem PC einen C-Compiler zu 
installieren und den zu benutzen um dir deine Tools zu machen, die du 
für die Embedded Welt benötigst?

> und habe von
> Windows-Programmierung leider keine Ahnung.

Musst du ja fürs erste auch nicht. Programme, die in der COmmand Line 
arbeiten sind immer noch gang und gäbe.

Auch auf Windows funktioniert ein
1
#include <stdio.h>
2
3
int main()
4
{
5
  printf( "Hello world\n" );
6
}

genau so, wie es sollte.
Kein Mensch sagt, dass du dich mit Window-Erzeugung und dergleichen 
rumschlagen musst.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.