Solved

getResourceAsStream is returning null

Posted on 2004-09-01
12
541 Views
Last Modified: 2010-03-31
Hello All,

I am facing problem with getResourceAsStream. When I have tested this with following test application also, it is raising problem.

When I bundle the class into jar and trying to run then it is returning null. otherwise it is running perfectly

What is the mistake  I am doing here.

public class Test{
      /**
       *
       * @param arguments
       * @throws Exception
       */
      public static void main(String arguments[])throws Exception
      {
            Test test=new Test();
            InputStream in =test.getClass().getResourceAsStream("a.txt");
            if(in==null)
            {
                  System.err.println("Error Raised here");
            }
            while(true && in!=null)
            {
                  int c=in.read();
                  if(c==-1 || c>=255)
                        break;
                  System.err.print((char)c);
            }
            
      }

}
0
Comment
Question by:sudhakar_koundinya
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 6
  • 3
  • 3
12 Comments
 
LVL 35

Accepted Solution

by:
girionis earned 50 total points
ID: 11956672
What happens if you do this:

URL url = getClass().getResource("a.txt");
InputStream is = url.openStream();
0
 
LVL 14

Author Comment

by:sudhakar_koundinya
ID: 11956680
even I have tried this also

object.getClass().getResourceAsStream("/class/a.txt");
0
 
LVL 35

Expert Comment

by:TimYates
ID: 11956779
where is the file in the jar?

I suspect you'll need:

    object.getClass().getResourceAsStream("/a.txt");
0
Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 14

Author Comment

by:sudhakar_koundinya
ID: 11956783
girionis,
 I got that

What is the problem with my code??
0
 
LVL 14

Author Comment

by:sudhakar_koundinya
ID: 11956788
>>object.getClass().getResourceAsStream("/a.txt");

Even that doesn't worked for me
0
 
LVL 35

Expert Comment

by:girionis
ID: 11956795
Nothing special, it is the same (I think so) as the one TIm suggsted also (putting the / in front of the resource).
0
 
LVL 35

Expert Comment

by:TimYates
ID: 11956800
Test.class.getResourceAsStream( "/a.txt" ) ;

should work too...
0
 
LVL 14

Author Comment

by:sudhakar_koundinya
ID: 11956849
>> Test.class.getResourceAsStream( "/a.txt" ) ;

even that doesn't worked

In jar file

class and text file are like this

mytest/Test.class
mytest/a.txt


0
 
LVL 35

Expert Comment

by:TimYates
ID: 11956980
As girionis said then, its

  Test.class.getResourceAsStream( "a.txt" ) ;

(or)

  Test.class.getResourceAsStream( "/mytest/a.txt" ) ;
0
 
LVL 14

Author Comment

by:sudhakar_koundinya
ID: 11957002
sorry TimeYates,

After testing all combinations, then only I posted this question

thanks
Sudhakar
0
 
LVL 14

Author Comment

by:sudhakar_koundinya
ID: 11957035
Ok, I decieded to use getResource

thanks for helping me :)
0
 
LVL 35

Expert Comment

by:girionis
ID: 11957616
:)
0

Featured Post

PeopleSoft Has Never Been Easier

PeopleSoft Adoption Made Smooth & Simple!

On-The-Job Training Is made Intuitive & Easy With WalkMe's On-Screen Guidance Tool.  Claim Your Free WalkMe Account Now

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Java Flight Recorder and Java Mission Control together create a complete tool chain to continuously collect low level and detailed runtime information enabling after-the-fact incident analysis. Java Flight Recorder is a profiling and event collectio…
Go is an acronym of golang, is a programming language developed Google in 2007. Go is a new language that is mostly in the C family, with significant input from Pascal/Modula/Oberon family. Hence Go arisen as low-level language with fast compilation…
Viewers learn about the third conditional statement “else if” and use it in an example program. Then additional information about conditional statements is provided, covering the topic thoroughly. Viewers learn about the third conditional statement …
Viewers will learn about the regular for loop in Java and how to use it. Definition: Break the for loop down into 3 parts: Syntax when using for loops: Example using a for loop:

730 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question