Kopieren Sie den Codecode wie folgt:
Paket com.cjonline.foundation.evisa;
import java.io.BufferedReader;
java.io.File importieren;
import java.io.FileFilter;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.math.BigDecimal;
öffentlicher Klassentest {
public static void main(String[] args) löst eine Ausnahme aus {
//Dateifilter, der Dateipfad kann den absoluten Pfad D://pressTest//test oder src/test verwenden.
File[] files = new File("src").listFiles(new FileFilter() {
public boolean Accept(File arg0) {
if(arg0.getName().endsWith(".txt")){//Txt-Datei auswählen
return true;
}
return false;
}
});
FileInputStream ist =null; //Eingabestream liest Datei
BufferedReader dr =null; //Zeilen lesen
for (Datei Datei : Dateien) {
System.out.println("---------[ Dateiname: "+ file.getName() +"]----------");
ist =new FileInputStream(file);
dr=new BufferedReader(new InputStreamReader(is));
String[] strings = new String[]{"Gesamt übertragene:","Anfragen pro Sekunde:","[ms] (Mittelwert)","Zeit pro Anfrage:",
„Übertragungsrate:“, „Fehlgeschlagene Anfragen:“, „Schreibfehler:“};
BigDecimal[] BigDecimals = calPress(dr);
int i=0;
for (BigDecimal BigDecimal : BigDecimals) {
System.out.println(strings[i]+" "+BigDecimal);
i++;
}
System.out.println();
}
dr.close();
is.close();
}
private static BigDecimal[] calPress(BufferedReader dr)
wirft IOException {
BigDecimal[] res = new BigDecimal[]{BigDecimal.ZERO,BigDecimal.ZERO,BigDecimal.ZERO,BigDecimal.ZERO
,BigDecimal.ZERO,BigDecimal.ZERO,BigDecimal.ZERO};
String totalTrans;
while((totalTrans = dr.readLine()) != null){
if (totalTrans.startsWith("Total transfered:")) {
String[] st = totalTrans.split(" ");
BigDecimal value = BigDecimal.valueOf(Double.valueOf(st[st.length-2]));
res[0]=res[0].add(value);
}
if (totalTrans.startsWith("Anfragen pro Sekunde:")) {
String[] st = totalTrans.split(" ");
BigDecimal value = BigDecimal.valueOf(Double.valueOf(st[st.length-3]));
res[1]=res[1].add(value);
}
if (totalTrans.endsWith("[ms] (mean)")) {
String[] st = totalTrans.split(" ");
BigDecimal value = BigDecimal.valueOf(Double.valueOf(st[st.length-3]));
res[2]=res[2].add(value);
}
if (totalTrans.startsWith("Time per request:") && !totalTrans.endsWith("[ms] (mean)")) {
String[] st = totalTrans.split(" ");
BigDecimal value = BigDecimal.valueOf(Double.valueOf(st[st.length-7]));
res[3]=res[3].add(value);
}
if (totalTrans.startsWith("Übertragungsrate:")) {
String[] st = totalTrans.split(" ");
BigDecimal value = BigDecimal.valueOf(Double.valueOf(st[st.length-3]));
res[4]=res[4].add(value);
}
if(totalTrans.startsWith("Fehlgeschlagene Anfragen:")){
String[] st = totalTrans.split(" ");
BigDecimal value = BigDecimal.valueOf(Double.valueOf(st[st.length-1]));
res[5]=res[5].add(value);
}
if(totalTrans.startsWith("Schreibfehler:")){
String[] st = totalTrans.split(" ");
BigDecimal value = BigDecimal.valueOf(Double.valueOf(st[st.length-1]));
res[6]=res[6].add(value);
}
}
Rückkehr res;
}
}