「java读取jar目录」java获取目录下的所有文件
本篇文章给大家谈谈java读取jar目录,以及java获取目录下的所有文件对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
- 1、java获取jar包中资源文件
- 2、Java如何获取当前的jar包路径以及如何读取j
- 3、java 怎么读取jar包里的文件
- 4、java 怎么读取web jar中的某个配置文件
- 5、怎样从JAR文件中读取文件?
- 6、java中如何获取一个jar包的路径
java获取jar包中资源文件
在src目录下建议一个文件夹,专门存放配置文件,项目编译后,直接用jar命令打包即可。
如有疑问,可远程协助解决。
有问题欢迎提问,满意请采纳,谢谢!
Java如何获取当前的jar包路径以及如何读取j
举例:
把配置文件ccc.xml放到编译路径,如src/com.aaa.aa下面,然后再根据
String rootPath=Xxxx.class.getResource("/").getPath();
获取到编译的根路径,配置文件的地址就是rootPath+"com/aaa/aa/ccc.xml"
java 怎么读取jar包里的文件
import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.jar.JarEntry;
import java.util.jar.JarFile;
public class ReadOutJarFile {
public static void main(String[] args) throws Exception {
String jarName="C://test.jar";//Jar包所在的位置
String fileName="com/111.txt";//文件在jar包里的路径
JarFile jarFile = new JarFile(jarName);//读入jar文件
java 怎么读取web jar中的某个配置文件
项目迁移的过程中发现以前的代码维护性实在是差。
我把问题简化为以下这些简单的代码:
项目M
引用了项目
A.jar,这个A在lib目录里面
在A里面放置了一个配置文件test.properties,
就放在jar的根目录下。
A.jar
|___test.properties
在M中有一段代码回去读取这个A.jar里的配置文件,简单一点就用下面这句话来调用。
Java
code
public
class
ConfigUtil
{
public
static
String
getInstance()
throws
Exception{
String
path
=
ConfigUtil.class.getResource("/").toString();
path
=
path.substring(0,
path.length()-8);//
System.out.println(path);//这里打印的结果显示可以拿到当前类的绝对路径
InputStream
f
=
new
FileInputStream("jar:"+path+"lib!/A.jar/"+"test.properties");
return
"xxx";
}
}
怎样从JAR文件中读取文件?
进入jar文件其实没有说的那么困难,jar文件本质是一个zip格式的压缩文件,只是把文件后缀名改了,要用Java读取里面的文件也没有那么想象的那么困难。使用相关协议就可以:
例如:c盘根目录有一个test.jar文件文件里面有个a.txt文件我们就读取这个a.txt文件
文件对应的URL:
jar:file:/C:/test.jar!/a.txt
Java代码:
import java.io.IOException;
import java.io.InputStream;
import java.net.URL;
public class TestDouble {
public static void main(String[] args) throws IOException {
URL url=new URL("jar:file:/C:/test.jar!/a.txt");
System.out.println(url);
InputStream is=url.openStream();
byte b[]=new byte[1000];
is.read(b);
System.out.println(new String(b).trim());
}
}
不是很清楚你到底是从直接将jar中文件解压出来还是通过Java将jar文件中的文件复制出来,如果是想直接解压出文件用winrar就可以了,要用Java复制看下面这个测试,基本上和复制文件差不多:
import java.io.*;
import java.net.URL;
public class CopyFile {
public static void copyFormJar(String fileUrl, String dest )
throws IOException
{
int BUFF_SIZE = 100000;
byte[] buffer = new byte[BUFF_SIZE];
InputStream in = null;
OutputStream out = null;
URL url=new URL(fileUrl);
try
{
in = url.openStream();
out = new FileOutputStream( dest );
while ( true )
{
synchronized ( buffer )
{
int amountRead = in.read( buffer );
if ( amountRead == -1 )
{
break;
}
out.write( buffer, 0, amountRead );
}
}
}
finally
{
if ( in != null )
{
in.close();
}
if ( out != null )
{
out.close();
}
}
}
public static void main(String[] args) throws IOException {
args=new String[2];
args[0]="jar:file:/C:/test.jar!/a.txt";
args[1]="c:/test.txt";
CopyFile.copyFormJar(args[0], args[1]);
}
}
java中如何获取一个jar包的路径
获取jar包的路径的方法:
xxxxx.class.getProtectionDomain().getCodeSource().getLocation()
其中xxxxx是类名
关于java读取jar目录和java获取目录下的所有文件的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。