Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: AW: [platform-core-dev] Getting the input stream for a resource - can't be that difficult!

Hmm, this means that they move around files ... Can you put the
resource in the same directory as your class? Then

         getClass().getResourceAsStream("myData.txt");

MUST work. It would be an error if that would not work. Eclipse is
mucking around a bit with the root. This should be OK in the near
future when they deliver their plugins as bundles (JAR files).

Kind regards,

     Peter Kriens

PN> Peter,

PN> Tried it.
PN> Returns null :-(


PN> Norbert 

PN> -----Ursprüngliche Nachricht-----
PN> Von: Peter Kriens [mailto:Peter.Kriens@xxxxxxxx] 
PN> Gesendet: Mittwoch, 27. April 2005 15:25
PN> An: Ploett Norbert
PN> Cc: platform-core-dev@xxxxxxxxxxx
PN> Betreff: Re: [platform-core-dev] Getting the input stream for
PN> a resource - can't be that difficult!

PN> Try:

PN>     InputStream in =
PN> getClass().getResourceAsStream("/data/myData.txt");

PN> That should work for any OSGi platform.

PN> Kind regards,

PN>      Peter Kriens
    
PN>> Hello folks,
 
PN>> I need to read the content of a (text) file which is part of my plug-in.
PN>> I found a way to do this, but I feel I did it in a rather awkward
PN>> manner. Look at what I wrote:
 
PN>> =====snip======= 
PN>>         String path = "/data/myData.txt" ;
PN>>         Bundle b = Platform.getBundle(PLUGIN_NAME);
PN>>         URL url = Platform.find(b, new Path(path));
PN>>         URL localUrl = null ;
PN>>         InputStream is = null ;
PN>>         InputStreamReader isr = null ;
PN>>         try {
PN>>                          localUrl = Platform.resolve(url);
PN>>                          is = localUrl.openStream();
PN>>                          isr = new InputStreamReader(is);
PN>>                 } catch (IOException e) {
PN>>                         // TODO Auto-generated catch block
PN>>                         e.printStackTrace();
PN>>                 }
PN>> =====snap=======

PN>> The key seems to be to get an IFile for my URL, then the IFile will give
PN>> me the InputStream. But I could not figure out how to do this, hence the
PN>> hack (?) with Platform.resolve() and the localURL. 
PN>> Or is this actually the way it must be done?

PN>> All hints appreciated.


PN>> Norbert 
PN>> _______________________________________________
PN>> platform-core-dev mailing list
PN>> platform-core-dev@xxxxxxxxxxx
PN>> https://dev.eclipse.org/mailman/listinfo/platform-core-dev




-- 
Peter Kriens                              Mob +33633746480
9C, Avenue St. Drézéry                    Tel +33467542167
34160 Beaulieu, France                    Tel +15123514821
AOL,Yahoo pkriens                         ICQ 255570717



Back to the top