Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.java.programmer > #18296

Re: How to include a text file in my executable JAR file?

From Jeff Higgins <jeff@invalid.invalid>
Newsgroups comp.lang.java.programmer
Subject Re: How to include a text file in my executable JAR file?
Date 2012-08-23 11:51 -0400
Organization A noiseless patient Spider
Message-ID <k15jh0$vjj$1@dont-email.me> (permalink)
References <30f3250b-9cea-402f-929a-3191d05a81f2@googlegroups.com> <k15htp$tsq$1@news.albasani.net>

Show all headers | View raw


On 08/23/2012 11:23 AM, Jan Burse wrote:
> Try:
> URLConnection con = myUrl.openConnection();
> InputStream in = con.getInputStream();
>
> You can then copy from the in, via a Java loop.
>
> zyng schrieb:
>> Hi:
>>
>> My Java program needs to access a text file(in fact, the Java code
>> will use Linux System command "cp" to copy this text file to a
>> destination folder during running). Suppose this is my Java program
>> HelloWorld.java:
>>
>> package aa.bb.cc;
>>
>> public class HelloWorld
>> {
>> ...
>>
>> public static void main(final String[] args)
>> {
>> final URL myUrl =
>> this.getClass().getClassLoader().getResource("namelist.txt");
>>
>> final File nameFile = new File(myUrl.getPath());
>> if(windowlayoutFile.exists() == false)
>> {
>> System.out.println(nameFile.getAbsolutePath() + " does not exist!!!");
>> }
>> else
>> {
>> System.out.println(nameFile.getAbsolutePath() + " exists");
>> }
>> }
>> }
>>
>> This is the directory and file structure in my file system:
>> /HOME/java_project/src/aa/bb/cc/HelloWorld.java
>> /HOME/java_project/build/aa/bb/cc/HelloWorld.class
>> /HOME/java_project/nonsrc/namelist.txt
>>
>> In Eclipse, I have added nonsrc as "external class folder" and the
>> code above works!

Eclipse has added nonsrc to the classpath
and getResource is able to find it.

Use a relative URL?

The output is:
>> /HOME/java_project/nonsrc/windowlayout.xml exists
>> I am still not clear why use "external class folder", but it works in
>> Eclipse.
>>
>> Now, my problem is when creating an executable JAR
>> file(helloworld.jar), my JAR content is(shown by the command "jar tf
>> helloworld.jar"):
>> aa/bb/cc/HelloWorld.class
>> namelist.txt
>>
>> Now, if i am at /HOME/test directory and the JAR file is here too:
>> java -jar helloworld.jar
>>
>> This is the confusing output:
>> /HOME/test/file:/HOME/test/robot.jar!/namelist.txt does not exist!!!
>>
>> The answers by Google just do not give me a clear whole picture of
>> what is going on. (I don't want to put namelist.txt at the same
>> package location as HelloWorld.java. I guess, if I do that, I maybe
>> able to make it work by myself)
>>
>> I am surprised by an exclamation shown in the file path too. I have
>> never used the class URL in the past, which is used in my code now.
>>
>> Thank you very much.
>>
>>
>

Back to comp.lang.java.programmer | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

How to include a text file in my executable JAR file? zyng <xsli2@yahoo.com> - 2012-08-23 08:01 -0700
  Re: How to include a text file in my executable JAR file? zyng <xsli2@yahoo.com> - 2012-08-23 08:04 -0700
  Re: How to include a text file in my executable JAR file? Jan Burse <janburse@fastmail.fm> - 2012-08-23 17:23 +0200
    Re: How to include a text file in my executable JAR file? Jeff Higgins <jeff@invalid.invalid> - 2012-08-23 11:51 -0400
      Re: How to include a text file in my executable JAR file? Jeff Higgins <jeff@invalid.invalid> - 2012-08-23 11:53 -0400
  Re: How to include a text file in my executable JAR file? Lew <lewbloch@gmail.com> - 2012-08-23 13:43 -0700
  Re: How to include a text file in my executable JAR file? Roedy Green <see_website@mindprod.com.invalid> - 2012-08-23 14:00 -0700

csiph-web