我正在尝试以转发顺序打印字符串,因为我在jsp页面日志文件中编码它看起来像,
[1322110800] LOG ROTATION: DAILY
[1322110800] LOG VERSION: 2.0
[1322110800] CURRENT HOST STATE:arsalan.hussain;DOWN;HARD;1;CRITICAL - Host Unreachable (192.168.1.107)
[1322110800] CURRENT HOST STATE: localhost;UP;HARD;1;PING OK - Packet loss = 0%, RTA = 0.06 ms
[1322110800] CURRENT HOST STATE: musewerx-72c7b0;UP;HARD;1;PING OK - Packet loss = 0%, RTA = 0.27 ms
代码是,
List<String> data = new LinkedList<String>();
String strpath="/var/nagios.log";
FileReader fr = new FileReader(strpath);
BufferedReader br = new BufferedReader(fr);
String ch;
int time=0;
String Conversion="";
do {
ch = br.readLine();
Conversion=String.valueOf(inf.stringToLong(ch));
Date d = new Date(Long.valueOf(Conversion));
Pattern pt = Pattern.compile("\\[(\\d+)\\]");
Matcher m = pt.matcher(ch);
if (m.find()) {
Date dt = new Date(Long.parseLong(m.group(1)) * 1000);
SimpleDateFormat sdf = new SimpleDateFormat("MM-dd-yyyy HH:mm:ss");
ch = m.replaceFirst('['+ sdf.format(dt) +']');
}
out.print(ch+"<br/>");
} while (ch != null);
fr.close();
然后我通过在我的代码中添加它来尝试它,
String[] arr=ch.split("\\[");
time=arr.length;
for(int num=time;num>=0;num--)
{
out.print(arr[num]+"<br/>");
}
现在上面的代码看起来像添加此代码后,
List<String> data = new LinkedList<String>();
String strpath="/var/nagios.log";
FileReader fr = new FileReader(strpath);
BufferedReader br = new BufferedReader(fr);
String ch;
int time=0;
String Conversion="";
do {
ch = br.readLine();
Conversion=String.valueOf(inf.stringToLong(ch));
Date d = new Date(Long.valueOf(Conversion));
Pattern pt = Pattern.compile("\\[(\\d+)\\]");
Matcher m = pt.matcher(ch);
if (m.find()) {
Date dt = new Date(Long.parseLong(m.group(1)) * 1000);
SimpleDateFormat sdf = new SimpleDateFormat("MM-dd-yyyy HH:mm:ss");
ch = m.replaceFirst('['+ sdf.format(dt) +']');
}
String[] arr=ch.split("\\[");
time=arr.length;
for(int num=time;num>=0;num--)
{
out.print(arr[num]+"<br/>");
}
//out.print(ch+"<br/>");
} while (ch != null);
fr.close();
但结果是JSP ???中的异常
希望你回复
最好的问候
答案 0 :(得分:0)
time=arr.length;
for(int num=time;num>0;num--)
{
out.print(arr[num-1]+"<br/>");
}