Properties与文件交互时按键中文排序算法实现研究.docVIP

Properties与文件交互时按键中文排序算法实现研究.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Properties与文件交互时按键中文排序算法实现研究

Properties与文件交互时按键中文排序算法实现研究   摘要: 首先介绍properties的基本理论和它的功能,然后分析并得出properties读写文件时处理中文排序的相关算法,从而为研究人员和开发人员基于需要选择使用properties提供依据。   关键词: Java;JDK;properties   中图分类号:TP 文献标识码:A 文章编号:1671-7597(2011)0310075-01      1 properties概述   Properties是JAVA开发语言中的一个数据结构,它保存的是键值对,其中的每一个键对应着一个值,而且键必须是唯一的,即键不能重复。它的数据结构可以用如下的图形表示:   在JDK中Properties 类表示了一个持久的属性集,属性列表中每个键及其对应值通常都是一个字符串,它可以保存在流中或从流中加载。一个属性列表可包含另一个属性列表作为它的“默认值”;如果未能在原有的属性列表中搜索到属性键,则搜索第二个属性列表。   因为Properties继承于Hashtable,所以可对Properties对象应用put和putAll方法,但是不建议使用这两个方法,因为它们允许调用者插入其键或值不是String的项,相反,应该使用setProperty方法。需要注意的是,如果在“不安全”的Properties对象(即包含非String的键或值)上调用store或save方法,则该调用将失败。类似地,如果在“不安全”的Properties对象(即包含非String的键)上调用propertyNames或list方法,则该调用将失败。   properties类是Hashtable的子类,如果要用Properties.store方法存储Properties对象中的内容,每个属性的关键字和值都必须是String类型的。   Properties本身是同步的,所以不用手工做同步。   2 properties写文件时处理中文排序的相关算法   使用properties写文件时,最常用的是将properties中保存的键值对保存到对应的文件中,这种情况在程序的配置文件中尤为常见。这里将properties写入文件时的中文排序算法概述如下。   1)如果不想让用户读懂写入文件的中文数据,可以使用UNICODE字串, 请特别注意下面代码的defList.store(new FileOutputStream(”c:/capital.txt),show capitals),基本实现算法如下:   ① 为了将Properties中的键和值写到文件中,首先要用Properties   类生成一个对象defList;   ② 用生成的对象defList调用setProperty方法对键和值进行初始化;   ③ 用defList.store(new FileOutputStream(c:/capital.txt),   Show capitals);并将这行代码放在try…catch中,这样写入到文件中的中文内容将是UNICODE字串,对于不想让用户读懂写入文件的中文数据时,推荐使用此法,但是写入文件的英文显示是可读的,因此,如果不想让用户读懂写入文件的所有数据,在此法中可以全部使用中文数据。   2)如果想使用中文写入文件并用中文显示中文数据,可以使用下面的defList.store(new FileWriter(c:/capital.txt),show capitals),基本实现算法如下:   ① 为了将Properties中的键和值写到文件中,首先要用Properties   类生成一个对象defList;   ② 用生成的对象defList调用setProperty方法对键和值进行初始化;   ③ 用defList.store(new FileWriter(c:/capital.txt),show capitals);并将这行代码放在try…catch块中,这样写入到文件中的中文内容将是中文字串,这样写入文件中的所有数据用户都是可读的,因此,如果并不在乎用户是否能读懂写入文件的所有数据,可以使用此法。   3)上面两种文件写入方法,不论是defList.store(new FileOutput   Stream(c:/capital.txt),null)实现UNICODE字串的写入,还是用defList.store(new FileWriter(c:/capital.txt),show capitals)   实现中文字串的写入,写入文件的内容都不是Properties中排序后的数据,如果想要使写入的内容是排序后的,可以使用如下的算法:   

文档评论(0)

erterye + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档