- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 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中排序后的数据,如果想要使写入的内容是排序后的,可以使用如下的算法:
您可能关注的文档
- PMU配置方法及WAMS在电力系统中应用.doc
- PM视角下一种软件工程实训项目学生评价模型设计.doc
- pN3胃癌预后分析.doc
- PNF技术与Rood技术联合应用对脑卒中患者上肢运动功能恢复影响1例报告.doc
- PNF牵拉法在柔韧素质训练中应用研究.doc
- PNF配合电针疗法在格林―巴利综合征治疗中应用.doc
- PNL2在黑素瘤中表达及意义.doc
- PNPLA3基因多态性与原发性肝癌遗传易感性相关性研究.doc
- POCIB职业技能大赛对高职商务英语实践教学影响.doc
- POCIB项目实施中过程管理分析.doc
- ProSeal喉罩联合舒芬太尼在妇科腹腔镜手术中应用效果分析.doc
- ProTaper Universal联合丁克除应用于根管再治疗临床研究.doc
- Protaper机动镍钛器械预备磨牙根管临床应用.doc
- ProTaper手用镍钛锉联合EDTA凝胶在老年人根管治疗中应用.doc
- ProTaper机用锉行后牙根管再治疗时护理研究.doc
- ProTaper锉在S形根管中成形效果研究现状.doc
- ProTaper联合根管加压冲洗治疗窦道型慢性根尖周炎临床分析.doc
- Protel 99 SE教学方法改革探讨.doc
- Protel 99元件库编辑器使用原则与技巧.doc
- Protel99se在使用中技巧及常见问题解决方法.doc
最近下载
- 学堂在线 实用绳结技术 期末考试答案.docx VIP
- 风力发电技术的发展现状和未来发展趋势.pptx VIP
- 医疗行业数据脱敏技术方案.docx VIP
- 新译林九年级上Unit 4 精选短语和词汇(预习+复习+默写)2024-2024学年牛津版英语九年级上册.docx VIP
- DB14T 3225-2025煤矸石生态回填环境保护技术规范.docx VIP
- 精品解析:辽宁省沈阳市第四十三中学2024-2025学年八年级上学期期中考试 数学试题(原卷版).docx VIP
- 中医内科学中风(共42张PPT).pptx VIP
- 探究与实践++湖泊生态环境治理与保护+课件-2025-2026学年八年级地理上学期湘教版(2024).pptx VIP
- 医疗器械经营质量管理制度及工作程序.docx VIP
- 额定电压110 kV(Um=126 kV)交联聚乙烯绝缘电力电缆及其附件 第1部分:试验方法和要求.pdf VIP
文档评论(0)