Avatar billede scoty Nybegynder
27. august 2002 - 13:51 Der er 26 kommentarer og
2 løsninger

Gemme data til flad fil fra en JSP siden

Jeg ønsker at gemme
data der er hente ud fra en database,
ned til en flad fil(ASCII) nogen der evt,
kan hjælpe med dette.

Date'ne er simple datatyper.
Avatar billede europe Nybegynder
27. august 2002 - 13:57 #1
Hva skal du bruge????
Avatar billede disky Nybegynder
27. august 2002 - 13:57 #2
F.eks. sådanne her:
For example to write an object that can be read by the example in ObjectInputStream:


    FileOutputStream ostream = new FileOutputStream("t.tmp");
    ObjectOutputStream p = new ObjectOutputStream(ostream);

    p.writeInt(12345);
    p.writeObject("Today");
    p.writeObject(new Date());

    p.flush();
    ostream.close();
Avatar billede scoty Nybegynder
27. august 2002 - 13:59 #3
Okay, men er der ikke noget sikkerhed fra Internet Explore man skal forbi
Avatar billede scoty Nybegynder
27. august 2002 - 14:00 #4
Jeg skal bruge en kanp, som f.eks siger "gem data"

og så skal et bestemt udtræk fra databasen
gemmes ned på flad fil
Avatar billede disky Nybegynder
27. august 2002 - 14:03 #5
Eller hvis du har rent simple typer:

/*
* Gem.java
*
* Created on 27. august 2002, 13:59
*/

import java.io.*;

/**
*
* @author  Reinke
* @version
*/
public class Gem
{
   
    /** Creates new Gem */
    public Gem()
    {
        try
        {
            FileOutputStream fout=new FileOutputStream("d:/filen");
            PrintWriter out=new PrintWriter(fout);
           
            int x=17;
            float f=4.17f;
           
            out.println("x = "+x);
            out.println("f = "+f);
           
            out.close();
            fout.close();
        }
        catch(IOException e)
        {
        }
    }
   
    /**
    * @param args the command line arguments
    */
    public static void main(String args[])
    {
        new Gem();
    }
   
}


Som giver dette i filen:
x = 17
f = 4.17
Avatar billede disky Nybegynder
27. august 2002 - 14:03 #6
nej ikke det mindste.

JSP kører jo på serveren, så du kan uden problemmet tilgå filer på serveren.

Men hvis du vil læse/skrive på clientens computer skal du lave en applet, som har en security policy fil med også.
Avatar billede scoty Nybegynder
27. august 2002 - 14:04 #7
Jeg er newbie i JSP,
kan man så bare sætte det ind sådan ...
Avatar billede disky Nybegynder
27. august 2002 - 14:04 #8
Hvis den fil skal gemmes hos brugeren bliver det noget sværere, det letteste er at den spytter det ud som ren text, så skal brugeren klippe klistre det selv så det lander i en fil.

Eller vælge 'save as' i browseren.
Avatar billede disky Nybegynder
27. august 2002 - 14:06 #9
Det her:
try
        {
            FileOutputStream fout=new FileOutputStream("d:/filen");
            PrintWriter out=new PrintWriter(fout);
           
            int x=17;
            float f=4.17f;
           
            out.println("x = "+x);
            out.println("f = "+f);
           
            out.close();
            fout.close();
        }
        catch(IOException e)
        {
        }


Gemmer en int og en float i en flad fil, du skal så selvfølgelig tilpasse det til dine forhold, men det skulle ikke være det store problem.
DU kan integrere det direkte i en JSP side, eller i en java klasse som du så kalder fra JSP siden.
Avatar billede scoty Nybegynder
27. august 2002 - 14:08 #10
Filen skal 'desværre' gemmes hos brugeren
Avatar billede scoty Nybegynder
27. august 2002 - 14:11 #11
Hvis vi nu antager at når vi trykke på acceptere her på siden,
ville vi få en dialog boks frem, som ville gemme en fil på
min / din harddisk.

Sådan skal det virke.
Avatar billede disky Nybegynder
27. august 2002 - 14:21 #12
Det du skal bruge er javascript, men mig bekendt kan man ikke fremprovokere at save dialog boxen kommer frem af sig selv, med undtagelse af hvis du gemmer det på serveren i en fil, og så går at knappen er en link til den fil, med en filetype som gør at browseren ønsker at save det på harddisken, f.eks. i form af en .zip fil.
Avatar billede scoty Nybegynder
27. august 2002 - 14:27 #13
jo men hvis man nu gemmer data'en i en fil først på
serveren kan man så ikke bare lave et link til knappe,
som skal hente denne fil.
Avatar billede disky Nybegynder
02. september 2002 - 09:06 #14
Jo hvis fil typen er en som browserne ikke kender feks

data.xyz

hvis .xyz er f.eks. .txt risikerer du bare browseren åbner filen istedet.
Avatar billede disky Nybegynder
06. september 2002 - 14:40 #15
svar nok ?
Avatar billede scoty Nybegynder
09. september 2002 - 13:18 #16
Lukker spm...
Avatar billede disky Nybegynder
09. september 2002 - 17:51 #17
Hallo, nu går du det igen med at uddele mange point og beholde de fleste selv.

Jeg håber du har en MEGET god forklaring, specielt fordi du BEGGE gange har fået 100% korrekte svar.

p.s. intet fører til almeldelse for snyd,
Avatar billede scoty Nybegynder
23. oktober 2002 - 22:07 #18
Hej Disky....

Det med at gemme filen med en anden extension virkede ikke.
IE vil automatisk prøve at læse indholdet i filen, og hvis
dette er læsbar for IE, viser IE det uden at downloaded den.
Man skal i sin registrerings editor, gå ind og disable denne
funktion.

Mvh Scoty
Avatar billede disky Nybegynder
23. oktober 2002 - 22:12 #19
Prøv at skriv følgende url i din browser

www.disky.dk/test.xyz

og kig så i filen bagefter.
Avatar billede scoty Nybegynder
24. oktober 2002 - 10:53 #20
Jeg har prøvet det, og det virker fint til min store forundring.
Jeg har prøvet på min egne server http://<ip>:8000/root/test.xyz
og her for jeg altså filen vist. Jeg har ladet 3 andre prøve også
og de får sammen resultat som mig.
Kan det evt. have noget med HTML kode at gøre.
Jeg har et link på siden med et A HREF tag  til filen...

Jeg forstår det ikke, men da det umiddelbart virker hos dig,
opretter jeg et spm, men 60 point til dig: http://www.eksperten.dk/spm/274448
Jeg vil jo gerne benytte mig af din hjælp fremover

Mvh
Scoty
Avatar billede disky Nybegynder
24. oktober 2002 - 11:07 #21
Hvad bruger du af webserver ?

Jeg bruger Resin som JSP server og Apache som webserver.
Avatar billede scoty Nybegynder
24. oktober 2002 - 11:11 #22
Jeg bruger den der er implementeret i J2EE RI.

Det er fordi systemet er udviklet til dette miljø
Avatar billede scoty Nybegynder
24. oktober 2002 - 11:14 #23
Jeg generer filen som en test.xyz fil,
hvor jeg ligge noget plain text ind.
Avatar billede disky Nybegynder
24. oktober 2002 - 11:18 #24
Har du mulighed for at se hvad for en HTTP header der bliver sendt fra serveren til IE ?

Jeg tror problemmet er at J2EE RI ikke sender en korrekt header for ukendte fil typer, hvilket resulterer i at IE tilter.
Avatar billede scoty Nybegynder
24. oktober 2002 - 11:32 #25
HTTP/1.1 200 OK
Content-Type: application/zip
Content-Length: 205
Date: Thu, 24 Oct 2002 09:33:05 GMT
Server: J2EE SDK/1.3.1 (HTTP/1.1 Connector)
Connection: close
Last-Modified: Thu, 24 Oct 2002 09:31:59 GMT
ETag: "205-1035451919645"

Dette er godt nok kun header fra en ZIP fil, men håber
du kan bruge denne!
Avatar billede disky Nybegynder
24. oktober 2002 - 11:33 #26
Jeg skal gerne have den der opstår når du forsøger at hente den .xyz fil
Avatar billede scoty Nybegynder
24. oktober 2002 - 11:35 #27
Den kan jeg ikke opsnuse lige nu, da jeg ikke sider localt ved serveren.
Desværre :-)
Avatar billede disky Nybegynder
24. oktober 2002 - 11:36 #28
:-(

Kan du poste den når det kan lade sig gøre ?
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