Toon posts:

[VB6] Tekst naast elkaar printen

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hoi,
ik ben aan het proberen een programmatje te schrijven dat een bestand opent die de eerste 14 bits (in hexadecimaal) controleerd en veranderd (ook in hexadecimaal en indien nodig.) Later slaagt ie het op in een ander bestand dat aangepast is (in ascii.) Bij dit laatste zit echter mijn probleem. Als ik het copier naar dat ander bestand gaat ie telkens de tekst onder elkaar af printen i.p.v. naast elkaar 8)7. Eerst had ik het geprobeerd met Print #1 en met Write #1 in de iteratie, omdat dit niet ging heb ik het geprobeerd met TextStream maar dit lukt me dus ook niet. |:( . kan iemand me helpe aub?

Ik heb de code online gezet die jullie hier kunnen downloaden

Aangezien ik niet echt een beginnende programmeur ben is het nu nog wat slordig en onoverzichtelijk. sry hiervoor.

  • Creepy
  • Registratie: Juni 2001
  • Laatst online: 20:17

Creepy

Tactical Espionage Splatterer

"lukt me dus niet"
Zou je kunnen aangeven wat er niet lukt en hoe je dit geprobeerd hebt? Post daarbij alleen de relevante code gewoon in je post i.p.v. een losse download. Dan blijft in de toekomst je topic ook begrijpbaar als je code niet meer te downloaden is ;)

En weet je zeker dat er in dat "hexadecimale" stuk geen 10 en 13 zitten? Dit zijn namelijk de codes voor een cariage return en een linefeed, wat in een tekst bestand een regeleinde aangeeft.

[ Voor 27% gewijzigd door Creepy op 07-01-2005 08:48 ]

"I had a problem, I solved it with regular expressions. Now I have two problems". That's shows a lack of appreciation for regular expressions: "I know have _star_ problems" --Kevlin Henney


Verwijderd

Topicstarter
oki,
Dit is het stukje waar het allemaal fout gaat


code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
Sub OpenTextFileTest(Tesxt As String, Naar As String)
    Dim fso As New FileSystemObject
    Dim f As File
    Dim fsoStream As TextStream
    Dim fsoNaar As TextStream
    Dim strLine As String
    Dim Verbeterd As String
    Dim i As Double
    
    Set f = fso.GetFile(App.Path & "..\temp.txt")
    Set fsoStream = f.OpenAsTextStream(ForReading)
    Set fsoNaar = fso.CreateTextFile(App.Path & "\Copy of " & Naar & ".txt")
    
    i = 0
    Verbeterd = hex2ascii(Tesxt)

        Do While Not fsoStream.AtEndOfStream
             strLine = fsoStream.ReadLine
             If i = 0 Then
                fsoNaar.WriteLine Verbeterd & Mid(strLine, 15, (Len(strLine) - 15))
             Else
                fsoNaar.WriteLine strLine
             End If
             i = i + 1
        Loop

    fsoStream.Close
    Set fsoStream = Nothing
    Set f = Nothing
    Set fso = Nothing
End Sub




Bij die fsoNaar.WriteLine's drukt ie het telkens onderelkaar af en niet naast elkaar.
Ik heb het ook al geprobeerd met Print en Write van een tekstbestand
Als ik Write #1, ; strLine; zet dan zet ie het wel naast een maar met " in het begin en op het einde :r en dus ook niet correct.
Ik heb gecontroleerd voor wat je daar zei van die 13 en 10 maar die komen er niet in voor.

Verwijderd

Je kunt toch gewoon Print var & var & enz doen om op dezelfde regel te schrijven :?

  • Maasluip
  • Registratie: April 2002
  • Laatst online: 14-05 20:34

Maasluip

Kabbelend watertje

Gewoonlijk wordt een ; gebruikt om meerdere strings achterelkaar op een regel te printen. Ik weet dat dit werkt met debug.print in het immediate window en met printer.print naar hardcopy toe. Ook bij de help van de Print Method wordt dit beschreven als een algemene methode en niet beperkt tot bepaalde objecten.

Signatures zijn voor boomers.


Verwijderd

Steek het geen een lijn moet zijn eerst in een aparte variable. Schrijf dan die variable weg. Zal waarschijnlijk ook iets performanter zijn ook, alhoewel dit wel te verwaarlozen zal zijn :)
Pagina: 1