我需要绘制一个动态图,即监视Linux计算机服务器。下面是Linux机器服务器的结果输出,使用它我将绘制一个图形。

02:54:09 PM kbmemfree kbmemused %memused kbbuffers kbcached kbcommit %commit02:54:11 PM 143612 3678012 96.24 217016 2067000 3024356 37.7302:54:13 PM 143612 3678012 96.24 217016 2067000 3024356 37.7302:54:15 PM 143612 3678012 96.24 217016 2067000 3024356 37.7302:54:17 PM 143488 3678136 96.25 217016 2067000 3024356 37.7302:54:19 PM 143488 3678136 96.25 217016 2067000 3024356 37.7302:54:21 PM 143488 3678136 96.25 217016 2067000 3024356 37.7302:54:23 PM 143488 3678136 96.25 217016 2067000 3024356 37.7302:54:25 PM 143488 3678136 96.25 217016 2067000 3024356 37.7302:54:27 PM 143488 3678136 96.25 217016 2067000 3024356 37.7302:54:29 PM 143488 3678136 96.25 217016 2067000 3024356 37.7302:54:31 PM 143488 3678136 96.25 217016 2067000 3024356 37.7302:54:33 PM 143488 3678136 96.25 217016 2067000 3024356 37.73

我的问题是,我需要获取“%memused”列的值(我需要获取96.24 value列)。

我试图使用字符串位置来分隔它们,但是由于值的长度频繁变化而导致致命错误,因此未能获得正确的值。任何人都可以为此建议任何逻辑。

最佳答案

你可以这样

try {
      BufferedReader bufferedReader = new BufferedReader(new InputStreamReader
          (new FileInputStream("pathofthtextfile")));
       while(true) {
          String line = bufferedReader.readLine();
          if (line == null) {
                break;
          }
          else{
             String[] data = line.split("\\s+");
             System.out.println(data[4]);
          }
}

} catch (FileNotFoundException e) {
            e.printStackTrace();
} catch (IOException e) {
            e.printStackTrace();
}

关于java - 需要分解并使用字符串操作获取值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25056661/

10-11 11:10