`
zhoulianglg
  • 浏览: 19019 次
  • 性别: Icon_minigender_1
  • 来自: 南京
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

读写ini 和 properties文件

 
阅读更多


***********************************.properties文件****************************

public static void main(String[] args) throws Exception {
Properties prop = new Properties();//属性集合对象
FileInputStream fis = new FileInputStream("engineToolTestSrc/config/config.properties");//属性文件输入流
prop.load(fis);//将属性文件流装载到Properties对象中
fis.close();//关闭流

//获取属性值,sitename已在文件中定义
System.out.println("获取属性值:name=" + prop.getProperty("name"));
//获取属性值,country未在文件中定义,将在此程序中返回一个默认值,但并不修改属性文件
System.out.println("获取属性值:password=" + prop.getProperty("password", "中国"));
System.out.println("获取" + prop.keySet().size());
System.out.println("获取" + prop.values().size());
System.out.println("获取" + prop.stringPropertyNames().size());
Enumeration enums = prop.keys();
while (enums.hasMoreElements()) {
Object key = enums.nextElement();
System.out.println("key = " + key + " value = " + prop.get(key));
}

// //修改sitename的属性值
// prop.setProperty("name", "Boxcode");
// //添加一个新的属性studio
// prop.setProperty("password", "Boxcode Studio");
// //文件输出流
// FileOutputStream fos = new FileOutputStream("engineToolTestSrc/config/config.properties");
// //将Properties集合保存到流中
// prop.store(fos, "Copyright (c) Boxcode Studio");
// fos.close();//关闭流
}

######################################.nin文件###########################

public class FileUtil {

  /**

  * 读取INI配置

  * @param file INI配置文件完整路径

  * @param sec 项

  * @param key 键

  * @param defaults 默认值

  * @return

  */

  @SuppressWarnings("unchecked")

  public static String GetPrivateProfileString(String file,String sec,String key,String defaults)

  {

  String result = defaults;

  Map map = getIniAllValue(file);

  if(map==null)

  return result;

  ArrayList section = (ArrayList)map.get(sec);

  if(section!=null)

  {

  Iterator iter = section.iterator();

  while(iter.hasNext()){

  String[] kv = (String[])iter.next();

  if(kv!=null && kv[0].equals(key.trim())){

  return dealCorpsSign(kv[1],2);

  }

  }

  }

  return defaults;

  }

  /**

  * 写入配置 INI文件

  * @param file INI配置文件完整路径

  * @param sec 项

  * @param key 键

  * @param value 值

  * @return

  */

  @SuppressWarnings("unchecked")

  public static boolean WritePrivateProfileString(String file,String sec,String key,String value)

  {

  value = dealCorpsSign(value,1);

  Map map = getIniAllValue(file);

  if(map==null)

  {

  map = new HashMap();

  ArrayList section = new ArrayList();

  section.add(new String[]{key,value});

  map.put(sec, section);

  }

  else {

  int x = 0,y = 0;

  ArrayList al = (ArrayList)map.get(sec);

  if(al!=null){

  Iterator iter = al.iterator();

  while(iter.hasNext()){

  x++;

  String[] kv = (String[])iter.next();

  if(kv!=null && kv[0].equals(key)){

  kv[1] = value;

  y++;

  }

  }

  }

  if(x==0){

  ArrayList section = new ArrayList();

  section.add(new String[]{key,value});

  map.put(sec, section);

  }

  else if(y==0){

  al.add(new String[]{key,value});

  map.put(sec, al);

  }

  }

分享到:
评论

相关推荐

    Java读写ini文件代码示例

    Java读写ini文件代码示例是一种常见的文件操作方式,ini文件是一种轻量级的配置文件格式,广泛应用于各种软件和系统中。Java语言可以通过多种方式来读写ini文件,本文将详细介绍Java读写ini文件代码示例。 Ini文件...

    python读写ini文件示例(python读写文件)

    很类似java的properties文件xml文件复制代码 代码如下:db_config.ini[baseconf]host=127.0.0.1port=3306user=rootpassword=rootdb_name=evaluting_sys[concurrent]processor=20 对应的python代码 复制代码 代码如下:...

    ini文件读写

    1. 在读写ini文件时,需确保文件权限允许读写操作。 2. 写入ini文件时,应确保文件对象正确关闭以保存更改。 3. 对于多线程环境,需要考虑同步控制以防止数据冲突。 4. 为保持文件的清晰,避免在ini文件中存储过于...

    Java Properties 解决中文乱码和顺序读写.docx

    Java Properties 类是Java标准库中用于处理配置文件的关键组件,主要负责存储和加载键值对数据,常用于管理应用程序的配置信息。配置文件通常以`.properties`为扩展名,采用文本格式,每行包含一个键值对,键和值...

    java ini配置文件读取

    - 如果不想依赖第三方库,可以使用`java.io`和`java.util`包中的类自定义读写INI文件。通过`BufferedReader`和`BufferedWriter`读写文件,利用`HashMap`或`Properties`对象来存储和操作配置信息。 7. **性能和效率...

    C#操作INI文件完整类

    本篇文章将详细讲解如何在C#中自定义一个类来读写INI文件。 首先,让我们来看一下`IniFile.cs`这个文件,它很可能包含了实现INI文件操作的核心代码。这个类可能包含了一系列方法,如`ReadValue`用于读取INI文件中的...

    initestt_INI文件读取_

    在Java中,可以使用`java.util.Properties`类,它能够读写.properties文件,与INI文件类似。 总的来说,Linux环境下读取INI文件并不困难,关键在于选择合适的编程语言和库,并理解这些库提供的API。通过编写自定义...

    C#操作ini配置文件

    在Settings类生成后,会在项目的Properties文件夹中找到Settings.designer.cs和Settings.settings两个文件。其中,Settings.settings是一个xml文件,它定义了所有的设置项及其默认值。开发者可以通过编程方式操作...

    java-read-ini-.rar_ini

    `.ini`文件格式源于Windows操作系统,用于存储应用程序的配置数据,它由键值对组成,结构清晰,易于读写。 在Java中,没有内置的库专门用于处理`.ini`文件,但我们可以利用基础的I/O流和字符串处理来实现读取功能。...

    android stdio ini文件存储_Android

    `.ini`文件是一种文本配置文件格式,通常用于存储软件的设置和配置信息。在Android Studio中,它们可能包含用户偏好、项目特定设置或其他相关数据。 `.ini`文件的结构相对简单,由节(section)和键值对(key-value...

    CONF_FILE_RW.rar_conf配置文件_dst_conf_file_读写配置 conf_读写配置文件

    首先,配置文件通常是以文本格式(如`.conf`、`.cfg`或`.ini`)存在的,它们存储了程序或服务的设置和参数。在Linux中,这些文件大多位于 `/etc/` 目录下,以便系统管理员可以方便地调整系统行为。例如,`/etc/...

    ini4j-0.5.2-SNAPSHOT-all.zip

    - 与其他Java配置框架(如Properties、XML、JSON等)比较,.INI文件格式更简单,易于理解和编辑,但可能不适合复杂的数据结构。 7. **社区支持与文档**: 官方网站通常会提供ini4j的API文档、示例代码以及用户...

    简易闹钟程序_读写配置文件

    1. **配置文件格式**:配置文件通常采用易于人类阅读的文本格式,如`.ini`、`.cfg`或`.json`等。这些文件包含键值对,其中键代表设置名,值代表对应的设置值。例如,在闹钟程序中,可能会有"闹钟时间"、"重复频率"或...

    python3.6的配置文件写入时保留注释(更正一个bug)

    python3.6,对其配置文件的读写进行了修改,目的是在设置值(会导致写文件)时,对原始文件中的注释进行保留。由于是对原工具中代码的修改,所以建议在使用此文件进行覆盖之前,先对原文件进行备份,防止在一些极端...

    操作init文件的源码

    3. `Properties.cpp` 和 `Properties.h`:可能定义了一个`Properties`类,用于存储和操作ini文件中的所有属性,可能包含查找和删除特定键值对的函数。 4. `Property.cpp` 和 `Property.h`:这可能代表了`Property`类...

    java配置文件 beta v1.0

    "Java配置文件 beta v1.0" 是一个专为处理各种格式配置文件的工具,它能够读写ini、conf、txt、properties等常见类型的配置文件,极大地提升了开发者在处理配置时的灵活性和效率。 对于配置文件的处理,Java提供了...

    ini密码登陆模块.rar

    在读写ini文件时,需要确保正确处理编码,避免出现乱码问题。 6. **编程语言接口**:大多数编程语言都有内置或第三方库支持ini文件的读写操作。例如,Python有`configparser`模块,Java可以使用`java.util....

    保存配置文件和读取配置文件

    在Python中,可以使用内置的`configparser`模块来处理.INI格式的配置文件,或者利用第三方库如`json`、`xml.etree.ElementTree`处理JSON和XML文件。对于其他语言,如Java,有`java.util.Properties`处理.properties...

    加载配置文件的方式(java[Properties,InputStream]与apache-commons-configuration组件)

    `Properties`类是Java中处理配置文件的标准工具,它主要用于读写键值对。以下是如何使用`Properties`和`InputStream`加载配置文件的步骤: 1. **使用Properties类**: - 创建`Properties`对象。 - 使用`...

Global site tag (gtag.js) - Google Analytics