java 如何解析txt文档,输入检索信息,然后输出

请输入代码需求:


请解析config.txt,文件格式包括段落名称、字段名称和字段值。段落名称的值为:"segment:"右边的字符串,在一个文件中不会有重复的段落名称;字段的名称为"="左边的字符串,字段的值为"="右边的字符串。例如:ipconfig是段落,ip是字段名称,字段值是"192.168.0.1",文件中以#起始的行为注释行,需要跳过,不做解析。


要求:


文件名称、段落名称、字段名称需要作为最终执行程序的命令行参数输入,程序返回字段值,输出到屏幕;


文件行中可能有多余的空白(空格或者制表符),比如等号前、等号后、前导空白符等,需要过滤这些空白符,只输出字段值;


需要注意:要判断是否是注释行,如果是注释行则跳过不做处理;


需要注意:要判断文件中是否有空白行,如果有空白行则跳过不做处理;


需要注意:段落名称不可能重复,但是,不同的段落中可能存在相同的字段名称;


需要注意:如果出现非法的命令行输入参数,需要有明确并恰当的提示;

 


环境提示:


linux操作系统默认安装选项包括了C开发环境,命令行可以直接编译;


windows操作系统的C程序开发可以使用VC等IDE环境编写。


java和操作系统无关,建议安装JDK后,使用文本编辑器编辑程序(如notepad、UE、vi等),在命令提示符下直接使用javac命令编译成class文件,使用java命令执行程序。


示例(java程序):


输入:javac GetConfig.java #进行编译;

       java GetConfig config.txt jdbcconfig username #命令行执行程序

       

       #三个参数:

       1、文件名称  

       2、段落名称  

       3、字段名称

       

       #本程序实现:根据段落名称和字段名称从指定的文件中取值。

输出:zhangsan    #输出结果

这是txt文档内容


#   net.conf

#   2009/12/20

    

#ipconfig 

segment:ipconfig

ip=     192.168.0.1

port=81

timeout=600000


#idbcconfig

segment:jdbcconfig

ip   = 192.168.0.2

port=8080

username=zhangsan


password=000000


#ftpconfig

segment:ftpconfig

ip= 192.168.0.3

port=21

username=mng


password=qqhbc


#websit

segment:websit

ip=192.168.0.222

port=8000

address=  http://www.sina.com.cn


#netconfig

segment:netconfig

ip = 192.168.9.28 

port= 1045

mac= AA.EF.FF.BA.3F.7A

timeout=600000


交互式爱情
浏览 723回答 3
3回答

ITMISS

一个一个字符扫描过来分析,没什么难的。这种题目,你自己先尝试写程序解析,遇到问题再问,别期望把题目贴出来,别人就直接给你程序。自己动手,丰衣足食,学习编程,这点觉悟是要有的

动漫人物

这个不复杂。。看下文件的读取,先把txt读入,然后就是分析字符串的事情了。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java