/ Forside / Teknologi / Udvikling / Java / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java
#NavnPoint
molokyle 3688
Klaudi 855
strarup 740
Forvirret 660
gøgeungen 500
Teil 373
Stouenberg 360
vnc 360
pmbruun 341
10  mccracken 320
Skrive hel string til fil ?
Fra : rofe@mailme.dkFJERND~


Dato : 16-04-03 19:06

Hejsa NG

Jeg skal skrive flere strings ned i en og samme fil, hvor jeg så som første
skridt sætter at jeg skal kunne skrive en string ned i filen, som jeg
angiver.

Det gider den bare ikke ?

Jeg har følgende kode i min metode:
----------------------------------------------------------------------------
-----------------
public void saveArticle()
{
try
{
String str = "hej med dig";

File outputFile = new File("artikel.txt");

FileWriter out = new FileWriter(outputFile);

out.write(str, 0, str.length());

System.out.println(str);
}
catch(IOException e)
{

}
}
----------------------------------------------------------------------------
-------------------
Den laver godt nok filen artikel.txt hvis denne ikke findes, men jeg kan
simpelthen ikke få den til at skrive noget i filen ? Jeg har været rundt og
kigge på alle mulige klasser (OutputStreamWriter, FileOutputStream, Writer
mv) og har forsøgt med de forskellige.
FileWriter synes jeg dog lyder mest til at skulle være den jeg skal bruge,
og den skulle også nedarve en metode write(String str), men det fungere bare
ikke ?

Nogen der har et eksempel der kan skrive en hel string ned, uden at dele den
i chars og skrive hvert enkelt chars ad gangen ?
Eller et link til en tutorial/guide ?

Så vil jeg være meget glad



Med venlig hilsen
Ronni
rofe@mailme[REMOVE].dk



 
 
Lars Dam (16-04-2003)
Kommentar
Fra : Lars Dam


Dato : 16-04-03 20:31

On Wed, 16 Apr 2003 20:05:43 +0200
<rofe@mailme.dkFJERNDETTE> wrote:

> Hejsa NG
>
> Jeg skal skrive flere strings ned i en og samme fil, hvor jeg så som første
> skridt sætter at jeg skal kunne skrive en string ned i filen, som jeg
> angiver.
>
> Det gider den bare ikke ?

Indsæt e.printStackTrace(); i din catch. Det kan være du overser en vigtig fejlmeddelse


> }
> catch(IOException e)
> {

e.printStackTrace();

> }
> }

vh. ld

rofe@mailme.dkFJERND~ (16-04-2003)
Kommentar
Fra : rofe@mailme.dkFJERND~


Dato : 16-04-03 21:36

Det hjalp ikke, der smider tilsyneladende ingen exception.

/Ronni



Søren Hjelholt (16-04-2003)
Kommentar
Fra : Søren Hjelholt


Dato : 16-04-03 21:42

<rofe@mailme.dkFJERNDETTE> wrote in news:3e9dbe99$0$136
$edfadb0f@dread15.news.tele.dk in dk.edb.programmering.java:

> Det hjalp ikke, der smider tilsyneladende ingen exception.
>

Hvilket måske er hele humlen, eller noget deromkring. Filoperation og andre
ting der kan give anledening til fejl er Java ikke ret gled for at arbejde
med, uden at det er sat ind i en try{} catch{} blok. Hvis du gør det, og så
laver printStackTrace() i catch blokken skulle du nok kunne få din
fejlmeddelelse.


--
Søren Hjelholt

"Døm din succes ud fra, hvad du har opgivet for at opnå den" - Dalai Lama

Ps. Fjern _nospam_ fra min mailadresse, hvis du vil sende en e-mail til mig.

Lars Dam (16-04-2003)
Kommentar
Fra : Lars Dam


Dato : 16-04-03 22:10

On Wed, 16 Apr 2003 22:35:42 +0200
<rofe@mailme.dkFJERNDETTE> wrote:

> Det hjalp ikke, der smider tilsyneladende ingen exception.
>
> /Ronni

Jeg kan se at du ikke lukker filen; åbner du den udefra inden du afslutter dit java program?

I så fald skal du huske at enten close() filen, eller flush() således at bufferen blive smidt ned på disken.

>


vh. ld

Anders K. Olsen (17-04-2003)
Kommentar
Fra : Anders K. Olsen


Dato : 17-04-03 19:08

<rofe@mailme.dkFJERNDETTE> skrev i en meddelelse
news:3e9d9b73$0$213$edfadb0f@dread15.news.tele.dk...
> Hejsa NG
>
> Jeg skal skrive flere strings ned i en og samme fil, hvor jeg så som
første
> skridt sætter at jeg skal kunne skrive en string ned i filen, som jeg
> angiver.

Flg. virker fint for mig:

import java.io.*;

public class TestFileWriter {

public static void main(String[] args) throws IOException {
PrintWriter out =
new PrintWriter(new BufferedWriter(new FileWriter("test.txt")));
out.println("Hello World");
out.flush();
out.close();
}
}

/Anders



rofe@mailme.dkFJERND~ (17-04-2003)
Kommentar
Fra : rofe@mailme.dkFJERND~


Dato : 17-04-03 19:15

Hej Anders

Det virker!

Det vil jeg kigge nærmere på! Tror faktisk PrintWriter er en af de få Write*
klasser jeg ikke
har været forbi...

Men mange TAK skal du ha' ! !


Med venlig hilsen
Ronni


"Anders K. Olsen" <akol_dk@hotmail.com> wrote in message
news:3e9eed92$0$135$edfadb0f@dtext01.news.tele.dk...
> <rofe@mailme.dkFJERNDETTE> skrev i en meddelelse
> news:3e9d9b73$0$213$edfadb0f@dread15.news.tele.dk...
> > Hejsa NG
> >
> > Jeg skal skrive flere strings ned i en og samme fil, hvor jeg så som
> første
> > skridt sætter at jeg skal kunne skrive en string ned i filen, som jeg
> > angiver.
>
> Flg. virker fint for mig:
>
> import java.io.*;
>
> public class TestFileWriter {
>
> public static void main(String[] args) throws IOException {
> PrintWriter out =
> new PrintWriter(new BufferedWriter(new FileWriter("test.txt")));
> out.println("Hello World");
> out.flush();
> out.close();
> }
> }
>
> /Anders
>
>



Mikkel Bundgaard (17-04-2003)
Kommentar
Fra : Mikkel Bundgaard


Dato : 17-04-03 22:51

On Wed, 16 Apr 2003 20:05:43 +0200, rof wrote:

> Hejsa NG
>
> Jeg skal skrive flere strings ned i en og samme fil, hvor jeg så som første
> skridt sætter at jeg skal kunne skrive en string ned i filen, som jeg
> angiver.
>
> Det gider den bare ikke ?
>
> Jeg har følgende kode i min metode:
> public void saveArticle() {
> try {
> String str = "hej med dig";
>
> File outputFile = new File("artikel.txt");
>
> FileWriter out = new FileWriter(outputFile);
>
> out.write(str, 0, str.length());
>
> System.out.println(str);

out.close();
> }
> catch(IOException e) {
e.printStackTrace();
> }
> }
Som nævnt af andre mangler du et kald til close på din FileWriter. Dette
burde løse problemet
--
Mikkel Bundgaard
Student at IT University of Copenhagen
Codito, Ergo Sum

Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408924
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste