Avatar billede graspman Nybegynder
24. september 2003 - 11:30 Der er 11 kommentarer og
1 løsning

Gemme indholdet af en richtextbox i en database

Så er der råb om hjælp!

Jeg har lavet en mindre wordpad i vb .net, men vil nu gerne have indholdet gemt i en database. Jeg har oprettet et OLE objekt i Access databasen, som det er meningen jeg vil gemme teksten i.

Er der nogen der har en ide? Eller en smartere måde?
Der er dog krav til at teksten skal ligge i databasen med den formatering af teksten der er blevet brugt...

På forhånd tak

Jesper
Avatar billede sys64738 Nybegynder
24. september 2003 - 19:25 #1
Skal RTF gemmes i database ? - Hvorfor ikke gemme dem i filsystemet ?
Avatar billede graspman Nybegynder
24. september 2003 - 19:30 #2
Problemet er at det skal være muligt at fritekstsøge i de dokumenter. Dokumentrene ligger på en server.
Det vil atge for langt tid at søge i alle dokumenterne..

Hilsen Jesper
Avatar billede sys64738 Nybegynder
24. september 2003 - 20:02 #3
Hej Jesper.

Mener at jeg engang sad overfor samme problemstilling.

Fandt en gartis RTF komponent på nettet til at konvertere RTF til text og gemte denne udgave i DB. Gemte derefter RTF i filsystemet.
Avatar billede graspman Nybegynder
25. september 2003 - 08:29 #4
Ok, du har vel ikke en ide om hvor du fandt den ?

Hilsen Jesper.

Det er faktisk ved at være en hastesag. Jeg skal bruge det til en hovedopgave, og vi har siddet fast i et stykke tid nu... :(
Avatar billede graspman Nybegynder
25. september 2003 - 08:32 #5
dvs. at du laver en ren tekstfil i databsen, men gemmer også en referance til RTF dokumentet, således du kan søge i databasen, men åbner RTF dokumentet fra filsystemet med dets formatering ?
Avatar billede sys64738 Nybegynder
25. september 2003 - 09:59 #6
Hej Jesper.

Lige præcis. Tag fat i den færdige RTF og Parse den til ren tekst, gem en kopi i Access DB med tilhørende filnavn. og gem derefter filen.
Jeg ser lige om jeg kan finde link til den komponent der kan parse.
Avatar billede sys64738 Nybegynder
25. september 2003 - 10:45 #7
Hej Igen... Se flg. eksempel på hvordan du parser RTF til alm.text

Public Sub CreateMyRichTextBox()
    Dim richTextBox1 As New RichTextBox
    richTextBox1.Dock = DockStyle.Fill

    richTextBox1.LoadFile("C:\MyDocument.rtf")
    richTextBox1.Find("Text", RichTextBoxFinds.MatchCase)

    richTextBox1.SelectionFont = New Font("Verdana", 12, FontStyle.Bold)
    richTextBox1.SelectionColor = Color.Red

    Dim DBstr As String = richTextBox1.Text
   
    '
    ...Her skal du så indsætte DBstr i ACCessDB samt en reference til filnavn
    '
   
    'richTextBox1.SaveFile("C:\MyDocument_1.rtf", RichTextBoxStreamType.RichText)
    'richTextBox1.SaveFile("C:\MyDocument_2.txt", RichTextBoxStreamType.PlainText)

    Me.Controls.Add(richTextBox1)

End Sub
Avatar billede graspman Nybegynder
25. september 2003 - 12:32 #8
Hejsa.
Du har vel ikke en ide til hvilken type det skal være i DB. Kan det være f.eks. et objekt jeg skal gemme den i? Hvis jeg tager en memo er der vist ikke plads til et ret stort dokument...

Grasp
Avatar billede sys64738 Nybegynder
25. september 2003 - 12:51 #9
Det er jo desværre halen ved Access. Memo tager kun 64Kb. Har du ikke mulighed for at bruge SQL-server ?
Avatar billede graspman Nybegynder
25. september 2003 - 14:47 #10
nej, desværre...
Avatar billede sys64738 Nybegynder
25. september 2003 - 15:38 #11
Du kunne jo også vælge helt at skippe Access til "filindhold" og kun bruge filsystemet.

Du gemmer RTF-filen samt en txt-version.
Du opretter kun reference til filen i Access
og bruger udtræk til at søge ned over txt-filer.
Der er selvfølgelig et performance spørgsmål, men jeg ved ikke hvor meget systemet skal kunne håndtere ?
Avatar billede graspman Nybegynder
26. september 2003 - 15:31 #12
systemet skal søge i de ca. nuværende 150 instrukser. Hver instruks er ca på 3 sider, så det er meget den skal søge i hver gang der laves fritekstsøgening....
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester