java 如何解析txt文档,输入检索信息,然后输出
天蓬老师
天蓬老师 2017-04-18 09:03:32
0
3
605

请输入代码需求:

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

要求:

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

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

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

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

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

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

环境提示:

  • 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
天蓬老师
天蓬老师

欢迎选择我的课程,让我们一起见证您的进步~~

全部回覆(3)
Peter_Zhu

一個一個字符掃描過來分析,沒什麼難的。
這種題目,你自己先嘗試寫程式解析,遇到問題再問,別期望把題目貼出來,別人就直接給你程式。
自己動手,豐衣足食,學習編程,這點覺悟是要有的。

小葫芦

這個不複雜。 。看下檔案的讀取,先把txt讀入,然後就是分析字串的事情了。

大家讲道理

思路:
1.了解指令
javac GetConfig.java是做什麼的? javac GetConfig.java是干什么的?
java GetConfig config.txt jdbcconfig username
该命令是运行编译好的GetConfig文件,那么相应的参数config.txt jdbcconfig usernamejava GetConfig config.txt jdbcconfig username

該指令是執行編譯好的GetConfig文件,那麼對應的參數config.txt jdbcconfig username是如何被你的程式拿到的,自行搜尋「java main args」

2.在知道目標檔名的情況下,如何用java把本地文件讀到內存,自行搜尋「java 讀檔」

3.檔案讀到記憶體之後,就可以依照題中的要求進行字串處理,自行搜尋「java String 使用」


提示:你可以把文件一行行的讀過來,然後每一行都能按照要求進行解析,當發現目標字段名,就能直接把值輸出。

請多多嘗試。 🎜
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板