网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > Java
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
本月文章推荐
.Java Socket编程(二)Java面向连.
.Java的文件与磁盘操作.
.ANT学习指南.
.javaswing9.27课程.
.[环境设置]关于resin和tomcat的一.
.一个java的初学者如何正确编译He.
.Java技巧:使用缓冲IO提高性能.
.Hibernate中的Session什么时候关.
.轻松处理命令行参数.
.学习Java基础知识: 需求.
.Java基本语法(五)——控制流程.
.Java XML教程(附:源程序).
.深入Java中文问题及最优解决方法.
.SpringSide推荐的JDK5.0 feature.
.Web程序从Struts向Stripes框架的.
.可用于 XML 和 Web 服务的专业工.
.Java程序员的存储过程.
.Java核心代码例程之:SortDemo.j.
.Java中的Stack.
.如何在代码中自动实现设计规范(组.

新手入门 解析配置文件的文件问题

发表日期:2008-1-5



  我们在解析配置文件的时候,经常会为路径发愁,我就碰到过这样的情况
  
 新手入门 解析配置文件的文件问题(图一)


  如上图所示:
  
  ParseProperties.Java是配置文件database.properties的解析类,那么我们怎样去取得它的路径并解析起配置呢?看解析类ParseProperties的源代码如下:
  
  package zy.pro.sc.db;
  
  import java.util.*;
  import java.io.*;
  
  public class ParseProperties {
  
  Properties properties = new Properties();
  
  public ParseProperties() {
  try{
  this.parseProp();
  }catch(Exception e){
  e.printStackTrace();
  }
  }
  
  public Properties parseProp()throws IOException {
  InputStream is=this.getClass().getResourceAsStream("database.properties");
  properties.load(is);
  is.close();
  return null;
  }
  public String getProperties(String propStr){
  return properties.getProperty(propStr);
  }
  public static void main(String[] args) {
  ParseProperties pp=new ParseProperties();
  String driver=pp.getProperties("jdbc.driver");
  System.out.println(driver);
  }
  }
  看粗体部分,this.getClass()方法可以得到了当前类的Class对象,也可以用ParseProperties.class.getClass()方法来实现同样的效果。之后调用其getResourceAsStream("database.properties")方法来解析配置文件。getResourceAsStream()方法解析文件时候的相对路径是当前类的包路径。
  
  就当前的包来说,zy.pro.sc.db对应的路径是src/zy/pro/sc/db。由于我们要解析的文件和解析类在同一目录下,所以我们的路径是"database.properties"。
  
  假如我们的解析文件和解析类不在同一目录下呢,如以下目录结构:
  
新手入门 解析配置文件的文件问题(图二)

  那么先看一下我们解析类的代码:
  
  InputStream is=this.getClass().getResourceAsStream("/database.properties");
  
  解析路径变成了"/database.properties", “/“表示取当前类所在的包的根路径下的database.properties文件,也就是相对于ParsePropertie.class的包的根路径下的 database.properties文件。
  
  用这种方法更有灵活性。此地要认真体会。不用这种方法,你的解析类只能在目录结构不发生改变的情况下使用。否则将发生异常。例如:你的解析类在servlet中调用的时候就会抛出找不到文件的异常。
  
  此路径的定位方法也可以使用于解析XML的文件。具体情况同上。
上一篇:下载版块安装---jigui2.0中文说明 人气:579
下一篇:Flex开发步骤——配置过程总结 人气:1451
浏览全部Java的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐