[VB] Inhoud van RichTextBox opslaan als PlainText

Pagina: 1
Acties:

  • WildOne
  • Registratie: Januari 2001
  • Laatst online: 22-05 06:46
Beste mensen,

Ik wil de tekst in een RichTextBox opslaan als plaintext. Heeft iemand enig idee of dit uberhaubt kan, en hoe dit dan moet?
Ik heb zelf gegoogled en het volgende gevonden
code:
1
RichTextBox1.SaveFile (bestandsnaam), RichTextBoxStreamType.PlainText


Helaas kom ik hier niet verder mee. Het gebruik van een gewone textbox is geen optie, omdat er behoorlijk grote bestanden ingeladen moeten worden.

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
RichTextBox1.Text :?

Dus gewoon:
code:
1
2
3
4
5
6
Dim FF as integer

FF = FreeFile
Open "C:\MijnPad\Mijnfile.txt" For output as #FF
Print #FF, RichTextBox1.Text
Close #FF


Erg basic, erg simpel en makkelijk te googlen IMHO.

http://groups.google.com/...TF-8&safe=off&sa=N&tab=wg

levert dit op:

http://groups.google.com/...3Doff%26sa%3DN%26tab%3Dwg

[ Voor 132% gewijzigd door RobIII op 13-04-2004 15:19 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


  • WildOne
  • Registratie: Januari 2001
  • Laatst online: 22-05 06:46
edit:
dat is dus precies mijn probleem inderdaad.

code:
1
2
CommonDialog1.ShowSave   
RichTextBox1.SaveFile CommonDialog1.Filename, rtfTEXT

Deze had ik ook al geprobeerd. Alleen komt hier dan dat savedialog, en dat is niet echt de bedoeling.

[ Voor 76% gewijzigd door WildOne op 13-04-2004 15:36 ]


  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Uhm... Daar kan ik nou effe geen touw aan vastknopen.
• Is het nou opgelost?
En zo nee,
• Wat is het probleem? De dialog? De .SaveFile method (die je helemaal niet nodig hebt)? Wat heb je geprobeerd? Hoe ziet je code er nu uit? Waarom werkt mijn voorbeeld niet (Want dat werkt; dat heb ik zelf getest)?

[ Voor 26% gewijzigd door RobIII op 13-04-2004 15:34 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


  • WildOne
  • Registratie: Januari 2001
  • Laatst online: 22-05 06:46
oke, ik zal het proberen duidelijk uit te leggen.

Ik ben bezig met een programma dat een tekstbestand moet inlezen. dit wordt dan in de richtextbox neergezet. Hieraan kunnen dan wijzigingen worden aangebracht, en moet het opgeslagen worden in een andere directory en met een andere extensie.

Mijn eerste poging:

code:
1
RichTextBox1.SaveFile (pad + filename2 + ".I")

Hierbij wordt de inhoud van richtextbox1 opgeslagen. filename2 is de naam van het bestand dat ingelezen is, alleen dan zonder de extensie, deze wordt namelijk vervangen door .I

Het probleem is dus, zoals beschreven in http://groups.google.com/...3Doff%26sa%3DN%26tab%3Dwg dat die extra tekens erbij komen


edit:

code:
1
2
3
CommonDialog1.InitDir = pad: CommonDialog1.FileName = (filename2 + ".I")
              CommonDialog1.ShowSave
              RichTextBox1.SaveFile CommonDialog1.FileName, rtfText

Tot zover klopt het nu, maar nu moet ik alleen nog op "Save" klikken. Dat wil ik eigenlijk ook automatisch laten doen.

[ Voor 18% gewijzigd door WildOne op 13-04-2004 15:51 ]


  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Ja, als je SaveFile gebruikt dan komen die extra tekens erbij als je opslaat als RTF.

Maar met mijn methode komen die tekens er toch niet bij? Ik heb dit nogmaals getest, en ik zie het probleem niet....

En met SaveFile:
code:
1
    RichTextBox1.SaveFile "C:\effe.txt", RichTextLib.rtfText

Werkt bij mij ook gewoon en slaat gewoon platte tekst op zonder andere meuk...
WildOne schreef op 13 april 2004 @ 15:46:
edit:

code:
1
2
3
CommonDialog1.InitDir = pad: CommonDialog1.FileName = (filename2 + ".I")
              CommonDialog1.ShowSave
              RichTextBox1.SaveFile CommonDialog1.FileName, rtfText

Tot zover klopt het nu, maar nu moet ik alleen nog op "Save" klikken. Dat wil ik eigenlijk ook automatisch laten doen.
Heb je enig idee waar je mee bezig bent of ben je gewoon code die je overal en nergens tegenkomt aan het copy/pasten en dan maar bidden dat het werkt?

Hoewel je code voor geen meter klopt, roep je hier expliciet een commondialog aan en vraagt daarmee dus om een filename. Dat is waar die commondialog voor bedoeld is, en dat is wat 'ie dus doet.

Wil je geen "save as..." dialog, dan moet je dus je commondialog niet aanroepen maar gewoon een filename meegeven zoals ik aan het begin van deze post laat zien.

[ Voor 104% gewijzigd door RobIII op 13-04-2004 16:00 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


  • WildOne
  • Registratie: Januari 2001
  • Laatst online: 22-05 06:46
RobIII schreef op 13 april 2004 @ 15:55:

En met SaveFile:
code:
1
    RichTextBox1.SaveFile "C:\effe.txt", RichTextLib.rtfText

Werkt bij mij ook gewoon en slaat gewoon platte tekst op zonder andere meuk...
Met deze regel werkt het idd perfect! Dank je.
De eerste oplossing die jij me gaf werkt ook prima, maar ik ben dit probleem op een laat stadium tegengekomen, met als resultaat dat ik die SaveFile al heel veel gebruikt heb. Ik wilde voorkomen dat ik weer opnieuw moest beginnen.
Heb je enig idee waar je mee bezig bent of ben je gewoon code die je overal en nergens tegenkomt aan het copy/pasten en dan maar bidden dat het werkt?

Hoewel je code voor geen meter klopt, roep je hier expliciet een commondialog aan en vraagt daarmee dus om een filename. Dat is waar die commondialog voor bedoeld is, en dat is wat 'ie dus doet.
Ik heb inderdaad weinig kaas gegeten van VB. Ik schrijf dit programma dan ook met veel hulp van de helpfunctie, en heb dus een heleboel probeersels gemaakt.

In ieder geval heel erg bedankt voor je hulp!
Pagina: 1