🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: pl.comp.lang.java
2 messages
2 total messages Started by garbus Fri, 20 Apr 2012 14:38
Pliki tekstowe w appletach.
#153396
Author: garbus
Date: Fri, 20 Apr 2012 14:38
43 lines
2269 bytes
Witam!

Mam do was pytanie dotyczące kodowania wczytywanych plików w applecie.

Mój applet używa pliku z niestandardowymi znakami (kodowanie UTF-8 bez 
BOM). Plik wczytuje następująco:


String word = "";
URL fileUrl = new URL(codeBase + "files/file.txt");
BufferedReader fileBufferedReader = new BufferedReader( new 
InputStreamReader( fileUrl.openStream() ) );
while( (word = new String( fileBufferedReader.readLine() ) ) != null ) {
	System.out.println(word);
}
fileBufferedReader.close();


Odpalając applet w Eclipse, wszystko działa OK. Problem pojawia się w
przeglądarce. Wtedy na konsoli JAVA wyświetlają się słowa z "krzakami".

Aplet na stronie ładuję kodem:

<applet code="Package/Applet.class" archive="archive.jar" height="600" 
width="400" ></applet>

Plik ładuje się poprzez URL (plik dostępny również przez przeglądarkę).
Przeglądarka na stronie z appletem używa kodowania UTF-8.

Pytanie numer jeden:
Co jest przyczyną różnicy kodowania w Eclipse i w przeglądarce i jak je 
naprawić, by przeglądarkowa wersja również dobrze czytała plik?

Pytanie dodatkowe:
Lepiej by było by plik nie był ładowany przez URL, niestety nie wiem jak 
to zrobić... Czy jest możliwe by wrzucić plik tekstowy do .jar i stamtąd 
go czytać (nie przez URL)? Kiedy tak zrobiłem, plik nie był widoczny, 
mimo że sam aplet ładował się z .jar-a.

Dzięki z góry za zainteresowanie i ewentualne podpowiedzi.

-- 
Pozdrawiam, Garbus.
Re: Pliki tekstowe w appletach.
#153397
Author: Bogusław Szczepanowski
Date: Fri, 20 Apr 2012 19:39
43 lines
2309 bytes
Dnia 20-04-2012 o 16:38:12 garbus <moj_nick@op.pl> napisał(a):

> Witam!
>
> Mam do was pytanie dotyczące kodowania wczytywanych plików w applecie.
>
> Mój applet używa pliku z niestandardowymi znakami (kodowanie UTF-8 bez  
> BOM). Plik wczytuje następująco:
>
>
> String word = "";
> URL fileUrl = new URL(codeBase + "files/file.txt");
> BufferedReader fileBufferedReader = new BufferedReader( new  
> InputStreamReader( fileUrl.openStream() ) );
> while( (word = new String( fileBufferedReader.readLine() ) ) != null ) {
> 	System.out.println(word);
> }
> fileBufferedReader.close();
>
>
> Odpalając applet w Eclipse, wszystko działa OK. Problem pojawia się w
> przeglądarce. Wtedy na konsoli JAVA wyświetlają się słowa z "krzakami".

Do InputStreamReadera podaj kodowanie

> Pytanie numer jeden:
> Co jest przyczyną różnicy kodowania w Eclipse i w przeglądarce i jak je  
> naprawić, by przeglądarkowa wersja również dobrze czytała plik?

To, że Eclipse jawnie ustawia UTF-8, a Java domyślnie korzysta z kodowania  
takiego jak system operacyjny.

> Pytanie dodatkowe:
> Lepiej by było by plik nie był ładowany przez URL, niestety nie wiem jak  
> to zrobić... Czy jest możliwe by wrzucić plik tekstowy do .jar i stamtąd  
> go czytać (nie przez URL)? Kiedy tak zrobiłem, plik nie był widoczny,  
> mimo że sam aplet ładował się z .jar-a.

Pliki wrzucasz do JARa, a następnie patrz Class.getResourceAsStream lub  
ClassLoader.getResourceAsStream

-- 
Boguś
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads