Crear un archivo en src en myeclipse y cómo llamarlo más tarde
En myeclipse, cree un archivo en src y luego haga referencia a él a través de la ruta absoluta del proyecto.
Obtener una ruta relativa
Explicación: Una ruta relativa (es decir, sin especificar con quién es relativa en ese momento) se puede obtener de las siguientes maneras (ya sea una proyecto java general o un proyecto web)
String relativaPath=System.getProperty("user.dir");
En la ruta relativa anterior, los archivos en el proyecto java son relativos al directorio raíz del proyecto
La ruta del archivo en el proyecto web varía dependiendo de los diferentes servidores web (tomcat es relativo al directorio de instalación de Tomcat\bin)
El segundo Se obtiene el directorio de carga de clases (es decir, cuando se ejecuta una determinada clase, se obtiene su directorio de carga)
1.1) Método general uno (ya sea un proyecto Java general o un proyecto web, primero ubique el directorio de primer nivel donde puede ver la ruta del paquete)
InputStream is=TestAction.class.getClassLoader().getResourceAsStream("test.txt");
(La ruta del archivo test.txt es el nombre del proyecto\src\test.txt; la primera parte del paquete donde se encuentra la clase TestAction (el directorio de nivel se encuentra en el directorio src)
En la fórmula anterior , reemplace TestAction y test.txt con los nombres de clase y archivos correspondientes
1.2) Método general dos (este método es similar al método en 1.1, la diferencia es que este método debe comenzar con '/',
InputStream is=Test1.class.getResourceAsStream("/test.txt");
(La ruta del archivo test.txt es el nombre del proyecto\src\test.txt , y el directorio de primer nivel del paquete donde se encuentra la clase Test1 está en el directorio src)
Obtención del directorio raíz de los tres proyectos web (después del lanzamiento)
1 Inicio desde servlet
Puedes crear un servlet y escribir la siguiente declaración en su método init
ServletContext s1=this.getServletContext();
String temp=s1 .getRealPath("/"); (Clave)
El resultado tiene el formato: D:\Tools\Tomcat-6.0\webapps\002_ext\ (002_ext es el nombre del proyecto)
Si se llama a s1.getRealPath(""), la salida es D:\Tools\Tomcat-6.0\webapps\002_ext (falta un "\")
2 A partir de httpServletRequest
String cp11111=request.getSession().getServletContext().getRealPath("/");
El resultado tiene el formato: D:\Tools\Tomcat-6.0\webapps\002_ext \
Obtener las cuatro rutas de clases (en Eclipse, obtener la ruta al directorio src o clases)
Método 1 Thread.currentThread().getContextClassLoader().getResource("") getPath()
por ejemplo: String t=Thread.currentThread().getContextClassLoader().getResource("").getPath();
<p>System.out.println("t---" t);
Salida: t---/E:/order/002_ext/WebRoot/WEB-INF/classes/
Método 2 JdomParse.class.getClassLoader().getResource("").getPath() (JdomParse es una clase en un determinado paquete de src, lo mismo a continuación)
por ejemplo: String p1= JdomParse.class.getClassLoader().getResource("").getPath();
System.out.println("JdomParse.class.getClassLoader().getResource--" p1);
Salida: JdomParse.class.getClassLoader().getResource--/E:/order/002_ext/WebRoot/WEB-INF/classes/
Además, si quieres poner el archivo en un paquete determinado, puede obtener el archivo de la siguiente manera (primero ubique el directorio de último nivel del paquete)
por ejemplo, String p2=JdomParse.class.getResource("").getPath();
System.out.println("JdomParse.class.getResource---" p2);
Salida: JdomParse.class.getResource---/E:/order/002_ext /WebRoot/WEB -INF/classes/jdom/ (JdomParse es la clase del paquete jdom en el directorio src)
Lectura de cuatro archivos de atributos:
Método 1
InputStream in = lnew BufferedInputStream( new FileInputStream(name)); Propiedades p = new Properties(); p.load(in);
Preste atención al problema de la ruta. puede llamar a p.getProperty(" nombre") para obtener el valor del atributo correspondiente
Método 2
Locale locale = Locale.getDefault();
ResourceBundle localResource = ResourceBundle.getBundle("test/ propertiesTest", locale);
Valor de cadena = localResource.getString("test");
System.out.println("ResourceBundle : " valor);
El contenido del archivo propertiesTest.properties (el sufijo del nombre debe ser propiedades) en el directorio src del proyecto es el siguiente:
test=hello word