[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
Re[2]: [platform-core-dev] Getting the input stream for a resource - can't be that difficult!
|
The getResource*** calls are rather nice because they are portable
between environments.
Kind regards,
Peter Kriens
TW> Peter's suggestion will only work if you have "." on the
TW> Bundle-ClassPath. You can also try:
TW> Bundle b = Platform.getBundle(PLUGIN_NAME);
TW> URL url = Platform.find(b, new Path(path));
TW> InputStream is = null;
TW> if (url != null)
TW> is = url.openStream();
TW> Did the url from Platform#find not work unless you resolved
TW> it? Questions like this should be posted to the news groups.
TW> Tom.
>> Try:
>>
>> InputStream in =
>> getClass().getResourceAsStream("/data/myData.txt");
>>
>> That should work for any OSGi platform.
>>
>> Kind regards,
>>
>> 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
>>
>> _______________________________________________
>> platform-core-dev mailing list
>> platform-core-dev@xxxxxxxxxxx
>> 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