Avatar billede mikkelbm Nybegynder
22. april 2003 - 19:48 Der er 7 kommentarer og
1 løsning

JTextPane til fil

Er det muligt at smide et JTextPane over i en fil, så den ser ud præcis som på skærmbilledet?

Jeg har prøvet lidt forskelligt, men jeg kan ikke få den til at lave linjeskift i filen. Den skriver bare teksten ud i en lang linje.
Avatar billede =maddog= Nybegynder
22. april 2003 - 19:53 #1
Det skulle da være muligt.. Hvad slags format vil du gerne have? Hvis det blot er et simpelt txt format kan det være du skal ændre \n til \n\r.
Avatar billede mikkelbm Nybegynder
22. april 2003 - 19:57 #2
Det er bare simpel txt, men da det er indholdet af en JTextPane, taster man jo ikke på noget tidspunkt \n.
Jeg bruger myTextPane.getText() og hvis jeg skriver det ud med System.out.println på DOS-skærmen virker det, men ikke på filen.
Avatar billede carstenknudsen Nybegynder
22. april 2003 - 20:25 #3
Nej, det kan du ikke med mindre du serialiserer hele komponenten. getText() returnerer blot den tekst der står, den gemmer ingen information om formatteringen (farve, kursivering etc). Som alle swing komponenter kan du gemme den som xml, men desværre er der heller ikke her information ang formatteringen.
Avatar billede mikkelbm Nybegynder
22. april 2003 - 21:30 #4
Med mindre jeg serialisere hele komponenten... - Hvordan?
Avatar billede carstenknudsen Nybegynder
23. april 2003 - 10:03 #5
Du serialiserer ved:
JTextPane component = ...;
Serializable o = component;
File file = new File( "myComponent.ser" );
ObjectOutputStream out = new ObjectOutputStream( new FileOutputStream( file ) );
out.writeObject( o );
out.close();
hent den ind igen med
file = new File( "myComponent.ser" );
ObjectInputStream in = new ObjectInputStream( new FileInputStream( file ) );
Serializable o = (Serializable)in.readObject();
in.close();
component = (JTextPane)o;
Avatar billede mikkelbm Nybegynder
23. april 2003 - 15:12 #6
Meningen var at den skulle ud på en læsbar fil. Og med det kendskab jeg har til serialisering og ObjectStream, bliver det til en 'flad-fil' (mener jeg det hedder??)
Det skulle fungere som en slags backup, som skal kunne læses. Når du gemmer objekter skal man jo kende dens præcise indhold  mht. variabler og metoder for at læse den igen.
Avatar billede carstenknudsen Nybegynder
23. april 2003 - 15:47 #7
Hvis du bare skal gemme teksten så brug getText, så ryger formatteringen blot.
Du kan også gemme den som xml, det kan du også let læse, men igen ryger formatteringen.
Avatar billede mikkelbm Nybegynder
23. april 2003 - 19:24 #8
Det jeg kan lede ud af dit svar er, at det ikke er muligt at gemme en JTextPane væk i en txt fil, og samtidig beholde linjeskift og lignende.
- Ærgeligt.
Men du gjorde et forsøg og skal have dine point.
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