「java获取本类」java获取类的路径
本篇文章给大家谈谈java获取本类,以及java获取类的路径对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
java怎么获取类加载
import java.io.File;
import java.io.IOException;
import java.net.URL;
public class MyUrlDemo {
public static void main(String[] args) {
MyUrlDemo muDemo = new MyUrlDemo();
try {
muDemo.showURL();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public void showURL() throws IOException {
// 第一种:获取类加载的根路径 D:\git\daotie\daotie\target\classes
File f = new File(this.getClass().getResource("/").getPath());
System.out.println(f);
// 获取当前类的所在工程路径; 如果不加“/” 获取当前类的加载目录 D:\git\daotie\daotie\target\classes\my
File f2 = new File(this.getClass().getResource("").getPath());
System.out.println(f2);
// 第二种:获取项目路径 D:\git\daotie\daotie
File directory = new File("");// 参数为空
String courseFile = directory.getCanonicalPath();
System.out.println(courseFile);
// 第三种: file:/D:/git/daotie/daotie/target/classes/
URL xmlpath = this.getClass().getClassLoader().getResource("");
System.out.println(xmlpath);
// 第四种: D:\git\daotie\daotie
System.out.println(System.getProperty("user.dir"));
/*
* 结果: C:\Documents and Settings\Administrator\workspace\projectName
* 获取当前工程路径
*/
// 第五种: 获取所有的类路径 包括jar包的路径
System.out.println(System.getProperty("java.class.path"));
}
}
java获取当前类上的注解内容
@Retention(RetentionPolicy.RUNTIME) // 注解会在class字节码文件中存在,在运行时可以通过反射获取到
@Target({ElementType.FIELD,ElementType.METHOD})//定义注解的作用目标**作用范围字段、枚举的常量/方法
@Documented//说明该注解将被包含在javadoc中
public @interface FieldMeta {
/**
* 是否为序列号
* @return
*/
boolean id() default false;
/**
* 字段名称
* @return
*/
String name() default "";
/**
* 是否可编辑
* @return
*/
boolean editable() default true;
/**
Java中怎样获取类中的方法
//通过包获取类对应的类对象
Class? f= Class.forName("java.io.File");
//通过对象去获取对象对应的类的类对象
//File file=new File("");
Class? f= file.getClass();
//通过类的class属性去获取类的类对象
Class? f= File.class;
//获取方法的数组
Method[] methods= f.getMethods();
循环得到你想要的这 类中的方法,字段,属性
java怎样通过io流获取一个类
Java中的 IO流文件有读取,写入,复制
//构造文件File类
File f=new File(fileName);
//判断是否为目录
f.isDirectory();
//获取目录下的文件名
String[] fileName=f.list();
//获取目录下的文件
File[] files=f.listFiles();
Java读取文件代码:
package com.yyb.file;
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStream;
/*
* 读取文件:
* 1、找到指定的文件
* 2、根据文件创建文件的输入流
* 3、创建字节数组
* 4、读取内容,放到字节数组里面
* 5、关闭输入流
*/
public class FileRead {
public static void main(String[] args) {
// 构建指定文件
File file = new File("E:" + File.separator + "hello.txt");
InputStream in = null;
try {
// 根据文件创建文件的输入流
in = new FileInputStream(file);
// 创建字节数组
byte[] data = new byte[1024];
// 读取内容,放到字节数组里面
in.read(data);
System.out.println(new String(data));
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
// 关闭输入流
in.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
Java文件写入代码:
package com.yyb.file;
import java.io.File;
import java.io.FileOutputStream;
import java.io.OutputStream;
/*
* 写入文件:
* 1、找到指定的文件
* 2、根据文件创建文件的输出流
* 3、把内容转换成字节数组
* 4、向文件写入内容
* 5、关闭输入流
*/
public class FileWriter {
public static void main(String[] args) {
// 构建指定文件
File file = new File("E:" + File.separator + "hello.txt");
OutputStream out = null;
try {
// 根据文件创建文件的输出流
out = new FileOutputStream(file);
String message = "我是好人。";
// 把内容转换成字节数组
byte[] data = message.getBytes();
// 向文件写入内容
out.write(data);
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
// 关闭输出流
out.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
Java复制文件代码:
span style="font-size:18px;"package com.yyb.file;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
/*
* 实现思路:
* 1、构建源文件与目标文件
* 2、源文件创建输入流,目标文件创建输出流
* 3、创建字节数组
* 4、使用循环,源文件读取一部分内容,目标文件写入一部分内容,直到写完所有内容
* 5、关闭源文件输入流,目标文件输出流
*/
public class FileCopy {
public static void main(String[] args) {
// 构建源文件
File file = new File("E:" + File.separator + "HelloWorld.txt");
// 构建目标文件
File fileCopy = new File("D:" + File.separator + "HelloWorld");
InputStream in = null;
OutputStream out = null;
try {
// 目标文件不存在就创建
if (!(fileCopy.exists())) {
fileCopy.createNewFile();
}
// 源文件创建输入流
in = new FileInputStream(file);
// 目标文件创建输出流
out = new FileOutputStream(fileCopy, true);
// 创建字节数组
byte[] temp = new byte[1024];
int length = 0;
// 源文件读取一部分内容
while ((length = in.read(temp)) != -1) {
// 目标文件写入一部分内容
out.write(temp, 0, length);
}
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
// 关闭文件输入输出流
in.close();
out.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
}/spanspan style="font-size: 24px;"
/span
java获取本类的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java获取类的路径、java获取本类的信息别忘了在本站进行查找喔。