Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: Java (JBuilder), MIDP ja InputStream

doxent [13.02.2006 15:15:18]

#

Olen täysin aloittelija tässä hommassa ja en ole hyvin sitkeästä yrittämisestä ohjeiden etsimisestä huolimatta löytänyt ratkaisua seuraavaan onglemaan.

        try {

            InputStream is = this.getClass().getResourceAsStream("/res/sample.txt");
            if (is != null) {
            stringItem1.setText(is.toString());
            is.close();
            } else {
                stringItem1.setText("Error occured while loading resource.");
            }

        } catch (Exception e) {
            stringItem1.setText("Exception thrown while loading resource.");
        }

getResourceAsStream kutsun jälkeen <is> on aina null vaikka tuo resource kyllä löytyy. Olen myös testannut muutkin vaihtoehdot kuten /sample.txt ja sample.txt jne.. Ei toivottua tulosta :(

Eli olen melkoisen varma että vika on jossain muualla kuin tuossa resurssinimessä.

FooBat [13.02.2006 20:30:16]

#

Testasin tuollaista koodinpätkää, ja kyllä se minulla toimi. is on null, jos ladattavaa resurssia ei löydy.


Ainoa järkevä selitys on, että tuo resurssi ei löydy classpath:ssa määritellyistä hakemistoista/paketeista.

1. Tarkista resurssin kirjoitusasu (isot ja pienet kirjaimet yms.)

2. Tarkista onko resurssi classpathissa (Tarkista erityisesti, että "." on classpathissa, jos resurssi on samassa hakemistossa kuin mistä käynnistät koodin).


En ole varma toimiiko toi MIDP:ssa jotenkin eri lailla kuin normaalissa javassa.

doxent [14.02.2006 03:47:00]

#

Päävalikon Project -> Project properties -> Build -> Resource

JBuilderin 2006 versiota käytän ja tästä polusta löysin listan päätteistä jotka kopioidaan resursseiksi projektille. Kaikki listan päätteet (.txt, .xml jne...) ovat oletuksena pois käytöstä joten ne eivät tule projektin mukaan.

Näin ainakin asian ymmärsin :) Nyt kuitenkin tuo systeemi näyttäisi toimivan, kiitoksia avusta.

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta