Eclipse Console Output Limit

社会主义新天地 提交于 2019-12-11 05:41:21

问题


I am using BufferReader to read log files from a game server. It does work but it just doesn't read the entire file just a small portion of it.

My code:

public ArrayList<String> readFile(File file){           
    try (BufferedReader br = new BufferedReader(new FileReader(file.getAbsolutePath())))
    {
        String sCurrentLine;
        ArrayList<String> list = new ArrayList<String>();
        while ((sCurrentLine = br.readLine()) != null) {
            list.add(sCurrentLine);                     
        }
        return list;
    } catch (IOException e) {
        e.printStackTrace();
    }
    return null; 
}

The files that i try to read have the size between 0.5 MB - 1.5 MB. The server logs look like this but it has many more lines. Like 20000 lines. I am only getting like 1500 lines from it.

00:05:29 - Great_Zhupan_Uros_SRB <img=ico_spear> Wolfpack_SikiciArthasan 
00:05:32 - Teamhit: AE_Shemaforash hit AB_Artorius for 10 hp. 
00:05:32 - AE_Shemaforash <img=ico_axeone> AB_Artorius 
00:05:32 - AE_Shemaforash(20578) teamkilled AB_Artorius(1076080). 
00:05:41 - Great_Zhupan_Uros_SRB <img=ico_spear> IR_Fall3N~3nG3l 
00:05:46 - AE_Shemaforash <img=ico_axeone> Xodanrot
00:06:05 - *DEAD* [AE_Blivandefar] xxxxxxxxxxxxxxxx
00:06:05 - Wolfpack_Dennell has joined the game with ID: 1305305 
00:06:07 - Wolfpack_Dennell joined the server. 

The log file starts at time 00:00:00 and ends at 23:59:59. When i start reading it, it only reads a small part of it like from 22:08:00 to 23:59:59. Can someone tell me what i am doing wrong? And if there are better solutions for this then i am all ears. Im using this data to convert them into statistics for players.


回答1:


The complex answer appears to be:

  1. The code for reading from the file is working fine.

  2. If you store the lines read from the file in a list then probably the best way to check how many of them were read is to check the size() of the list.

  3. Do not print huge amounts of information (like 1000+ lines, or actually even 100+...) to the console, as such amount is probably not to be read by anyone, ever.



来源:https://stackoverflow.com/questions/20799763/eclipse-console-output-limit

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!