在java中,如何截取有用的内容(在文本文件中)
答案:3 悬赏:0 手机版
解决时间 2021-03-15 00:41
- 提问者网友:寂寞撕碎了回忆
- 2021-03-14 08:07
在java中,如何截取有用的内容(在文本文件中)
最佳答案
- 五星知识达人网友:狂恋
- 2021-03-14 09:28
你首先要确定你举例的3行是否是真的3行,如果是,那么问题就变成了从3行字符串中取出两行,如果内容是固定的,那么你可以这样:
String lines=null;
while(lines=fis.readline()!=null)
{
if(lines.contens("Nov 23, 2014") || lines.contens("putPackout_MKD_share"))
.....
}
如果内容固定,那个改用正则表达式匹配追问我那个截取的是log文本,内容的形式差不多,我举例的那三行不完全是,只是一部分,你说的内容不是固定的时候,那该又如何去写呢?那麻烦下你可以帮我写一下么。我小白,万分感激!!!追答是这样的,我的程序原理是查找关键字的方式取得想要的行,你看看你的文件,是否所有行都有符合的关键字,如果不行的话那就只能取行号了,刚才看了下正则表达式,好像你的场景用正则表达式不太合适。比如你要取的行都有"putPackout_MKD_share"字样,那么用contains("putPackout_MKD_share")即可取出该行。
String lines=null;
while(lines=fis.readline()!=null)
{
if(lines.contens("Nov 23, 2014") || lines.contens("putPackout_MKD_share"))
.....
}
如果内容固定,那个改用正则表达式匹配追问我那个截取的是log文本,内容的形式差不多,我举例的那三行不完全是,只是一部分,你说的内容不是固定的时候,那该又如何去写呢?那麻烦下你可以帮我写一下么。我小白,万分感激!!!追答是这样的,我的程序原理是查找关键字的方式取得想要的行,你看看你的文件,是否所有行都有符合的关键字,如果不行的话那就只能取行号了,刚才看了下正则表达式,好像你的场景用正则表达式不太合适。比如你要取的行都有"putPackout_MKD_share"字样,那么用contains("putPackout_MKD_share")即可取出该行。
全部回答
- 1楼网友:何以畏孤独
- 2021-03-14 11:58
时间可以建立个数组,存放每个月头3个字母,写个方法去匹配,然后往后推多少位就得到了
我不知道你第三行有什么要求,如果是为了得到putPackout_MKD_share的话,也可以这么做追问关于时间的数组该如何定义呢?而且你说的头3个字符匹配一般是要用正则表达对吗?
关于你说的还是存在问题,可以加你为好友么?我1908920678,谢谢追答Nov 23, 2014 10:41:27 AM 拿这个为例子,他这个格式长度是不变的,得到前3个字母和以PM或者AM结尾即可
我不知道你第三行有什么要求,如果是为了得到putPackout_MKD_share的话,也可以这么做追问关于时间的数组该如何定义呢?而且你说的头3个字符匹配一般是要用正则表达对吗?
关于你说的还是存在问题,可以加你为好友么?我1908920678,谢谢追答Nov 23, 2014 10:41:27 AM 拿这个为例子,他这个格式长度是不变的,得到前3个字母和以PM或者AM结尾即可
- 2楼网友:摆渡翁
- 2021-03-14 10:45
读取进来,变成字符串,然后 字符串.split("\n") 以换行符为分隔符,将字符串转换为数组,然后取数组下标 得到你想要的字符串追问可以帮我写个例子么,谢谢
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯