【求助】怎么用Java读txt文件,根据其中的条件,输出一个csv文件?(具体情况见内容)

毕设货栈 其他问答 1

用Java, 读txt文件(根据Eclipse软件的下方的console改成的log.txt) —————————————————————————————————————— 例: [2013-08-26 10:45:45,042] ERROR does not exist. [2013-08-26 14:43:09,145] ERROR Certification failed. [2013-08-26 14:43:09,145] ERROR Certification failed. [2013-08-26 14:43:10,973] ERROR Certification failed. [2013-08-26 14:43:33,285] ERROR Certification failed. [2013-08-28 09:23:12,920] INFO Login succeeded.User ID=[CSDN123] [2013-09-02 10:13:32,793] INFO Login succeeded.User ID=[CSDN123] [2013-09-02 10:36:05,050] INFO Login succeeded.User ID=[CSDN123] [2013-09-02 10:48:26,407] INFO Login succeeded.User ID=[CSDN123] —————————————————————————————————————— 从左至右分别是: [时间][级别(有Error、Info、Warning等)][错误信息]

然后,根据时间(如:2013-08-26至2013-09-01), 将其中这些行的信息写成csv文件 (格式是:时间,级别(有ERROR、INFO、WARNING等),错误信息)。

或者,根据级别(如:级别是ERROR), 将这些行的信息写成csv文件,格式同上。

小弟初来乍到,求大神帮忙,实现此功能,万分感谢!

回复

共2条回复 我来回复
  • 代码助手
    这个人很懒,什么都没有留下~
    评论

    java读取txt文件内容。可以作如下理解:

    1. 首先获得一个文件句柄。File file = new File(); file即为文件句柄。两人之间连通电话网络了。接下来可以开始打电话了。
    2. 通过这条线路读取甲方的信息:new FileInputStream(file) 目前这个信息已经读进来内存当中了。接下来需要解读成乙方可以理解的东西
    3. 既然你使用了FileInputStream()。那么对应的需要使用InputStreamReader()这个方法进行解读刚才装进来内存当中的数据
    4. 解读完成后要输出呀。那当然要转换成IO可以识别的数据呀。那就需要调用字节码读取的方法BufferedReader()。同时使用bufferedReader()的readline()方法读取txt文件中的每一行数据哈。 然后自己一行行读取,再按规律解析。
    0条评论
  • 源码导航
    这个人很懒,什么都没有留下~
    评论

    Java没有这些类库,直接处理可行但非常麻烦。这种情况用润乾集算器要方便得多,将日志解析成二维行列的序表,并输出csv,脚本如下:

    A1 =file("E:\log.txt").import@i()
    
    A2 =A1.(~.array(" ")).new(~(1).string():time,~(2):level,~.to(3,).string(" "):content)
    
    A3 =A2.select(time>="2013-08-26" && time<="2013-09-01")
    
    A4 =file("E:\result.csv").export@t(A3;",")
    

    这段代码很容易嵌入JAVA程序中使用

    0条评论

发表回复

登录后才能评论