/**
* 类名:PropertiesUtil
* 功能:提供对properties配置文件的读取和写入
* @author ChengTao
*/
package com.xy.xyd.rest.biz.service.impl;

import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.Properties;

public class PropertiesUtil {

/**
* 根据key值查找配置文件里的值
* @param key
* @return
*/
public String getProperty(String key){
      Properties prop = new Properties();
      // URL resource = Thread.currentThread().getContextClassLoader().getResource("");
      InputStream resourceAsStream =

Thread.currentThread().getContextClassLoader().getResourceAsStream("properties/development/Parameter_xyd.properties");
      try {
            prop.load(resourceAsStream);
            prop.getProperty(key);
      } catch (FileNotFoundException e) {
            e.printStackTrace();
     } catch (IOException e) {
            e.printStackTrace();
      }
     return prop.getProperty(key);
}

/**
* 将文件加载到内存中,在内存中修改key对应的value值,再将文件保存 getFile
* @throws Exception
*/
public void setProper(String key,String value){
      Properties prop = new Properties();
      File file       new File(Thread.currentThread().getContextClassLoader().getResource("properties/development/Parameter_xyd.properties").getFile());      try {

prop.setProperty(key, value);
          FileOutputStream fos = new FileOutputStream(file);
          prop.store(fos, null);
          fos.close();
     } catch (FileNotFoundException e) {
         e.printStackTrace();
     } catch (IOException e) {
         e.printStackTrace();
      }
}

//inputStream转outputStream
public ByteArrayOutputStream parse(InputStream in) throws Exception{

ByteArrayOutputStream swapStream = new ByteArrayOutputStream();
          int ch;
          while ((ch = in.read()) != -1) {
              swapStream.write(ch);
          }
         return swapStream;
}

//outputStream转inputStream
public ByteArrayInputStream parse(OutputStream out) throws Exception{
         ByteArrayOutputStream baos=new ByteArrayOutputStream();
         baos=(ByteArrayOutputStream) out;
         ByteArrayInputStream swapStream = new ByteArrayInputStream(baos.toByteArray());
         return swapStream;
 }
}

properties配置文件的读取和写入的更多相关文章

  1. Java上传图片到Ftp,包含上传后文件大小为0的问题和Properties配置文件的读取

    准备工作:需要使用coomos-net jar包.下载地址 一. 上传图片到FTP,文件大小为0的问题,解决:将ftp模式修改为Passive模式就可以了. //将ftp模式修改为Passive模式 ...

  2. php以数组做为配置文件的读取和写入操作

    最近想用php开发个简单的文章管理系统,主要是做一批垃圾采集站,目前网上的cms都太多功能了,导致修改个模板要很多文件,花费很多功夫.开始用thinkphp框架做,感觉还是麻烦,后来改用ci,做好了后 ...

  3. JSP读取properties配置文件 解决读取中文乱码

    一.项目结构: 二.配置文件内容: 三.test.jsp代码: 四.运行效果: 总结: 1.JSP加载 properties 文件并获得输入流,是通过request.getSession().getS ...

  4. Winform中自定义xml配置文件后对节点进行读取与写入

    场景 Winform中自定义xml配置文件,并配置获取文件路径: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/100522648 ...

  5. properties 资源文件读取

    1.   在source中添加资源文件 resource.properties #FTP 相关配置 #FTP 的ip地址 FTP_ADDRESS=192.168.88.142 FTP_PORT=21 ...

  6. Java配置文件Properties的读取、写入与更新操作

    /** * 实现对Java配置文件Properties的读取.写入与更新操作 */ package test; import java.io.BufferedInputStream; import j ...

  7. 关于java读取和写入properties配置文件的内容

    一般通过使用流的方式进行读取 代码示例如下: package com.zznode.transmit.util; import java.io.FileInputStream; import java ...

  8. 对Java配置文件Properties的读取、写入与更新操作

    http://breezylee.iteye.com/blog/1340868 对Java配置文件Properties的读取.写入与更新操作 博客分类: javase properties  对Jav ...

  9. 实现对Java配置文件Properties的读取、写入与更新操作

    /** * 实现对Java配置文件Properties的读取.写入与更新操作 */ package test; import java.io.BufferedInputStream; import j ...

随机推荐

  1. idea中的svn配置

    idea的使用之svn篇--有图超详细 http://ylq365.iteye.com/blog/1955291

  2. 【好玩】将js代码转为日式表情

    直接上网址:http://utf-8.jp/public/aaencode.html?src=hello 试试将下面代码执行一下吧: ゚ω゚ノ= /`m´)ノ ~┻━┻ //*´∇`*/ ['_']; ...

  3. shell编程中for file in $*; do是什么意思.

    $*是此行命令所在函数(脚本)的所有被传入参数的合集与$@类似,不用引号的情况下没有区别区别是当被""扩起来以后"$*"被当做一个字符串"$@&quo ...

  4. 一款符合当前主流审美的Swing外观(Look and Feel)_测试版发布

    [前言] 本文将展示的是一款J2SE平台Swing外观(Look and Feel)实现,目前给出的演示jar包仅供测试之用,主体工作已经完成,余下是兼容性测试和调整,附件中的演示jar包推荐运行于j ...

  5. Eclipse 自动补全功能失效解决办法及修改快捷键方法

    最近在学习Java,前段时间分盘把电脑能坏了,重装系统后发现我的Eclipse的自动补全的功能失效了,那多麻烦呀,什么都得自己打,于是百度后总结了以下解决方法: 1.点击Window-->Pre ...

  6. 文字的多列布局--column

  7. CSS样式案例(2)-制作一个简单的登录界面

    首先来张完工的效果图. 一.html文件如下: <!DOCTYPE html> <html> <head> <meta charset="UTF-8 ...

  8. 用H5的canvas做时钟

    <!doctype html><html> <head> <meta charset="UTF-8"> <title>D ...

  9. Java网络编程学习

    服务器是指提供信息的计算机或程序,客户机是指请求信息的计算机或程序,而网络用于连接服务器与客户机,实现两者相互通信.但有时在某个网络中很难将服务器与客户机区分开.我们通常所说的“局域网”(Local ...

  10. Java设计模式 之 工厂方法模式

    1. 使用设计模式的好处:可提高代码的重复性,让代码更容易被他人理解,保证代码的可靠性. 2. 工厂模式定义:就是创建一个工厂类来创建你需要的类,工厂模式包括工厂模式和抽象工厂模式,抽象工厂模式是工厂 ...