Hackerboard Wiki HaboBlog
Hackerboard bei Facebook Hackerboard bei Google+ Hackerboard bei Twitter

[HaBo]

 
Applikationen Probleme mit Anwendungsprogrammen aller Art gehören hier hin.

HILFE tasklist.exe mit java verarbeiten

Diskussion: HILFE tasklist.exe mit java verarbeiten im Forum Applikationen, in der Kategorie Software Home; Anzeige hatte mal ne frage was daran falsch ist ??: Code: import java.io.*; import java.util.StringTokenizer; /** * * @author Muneeswaran ...

Antwort
Alt 07.06.10, 21:33   #1 (permalink)
 
Registriert seit: 07.06.10
JohnnyG Leistung: Facit NTK
Likes: 0
Angry HILFE tasklist.exe mit java verarbeiten

Anzeige

hatte mal ne frage was daran falsch ist ??:

Code:
import java.io.*;
import java.util.StringTokenizer;

/**
 *
 * @author Muneeswaran
 */
public class GetProcessList
{

 private String GetProcessListData()
 {
 Process p;
 Runtime runTime;
 String process = null;
 try {
 System.out.println("Processes Reading is started...");

 //Get Runtime environment of System
 runTime = Runtime.getRuntime();

 //Execute command thru Runtime
 p = runTime.exec("tasklist");      // For Windows
 //p=r.exec("ps ux");              //For Linux

 //Create Inputstream for Read Processes
 InputStream inputStream = p.getInputStream();
 InputStreamReader inputStreamReader = new InputStreamReader(inputStream);
 BufferedReader bufferedReader = new BufferedReader(inputStreamReader);

 //Read the processes from sysrtem and add & as delimeter for tokenize the output
 String line = bufferedReader.readLine();
 process = "&";
 while (line != null) {
 line = bufferedReader.readLine();
 process += line + "&";
 }

 //Close the Streams
 bufferedReader.close();
 inputStreamReader.close();
 inputStream.close();

 System.out.println("Processes are read.");
 } catch (IOException e) {
 System.out.println("Exception arise during the read Processes");
 e.printStackTrace();
 }
 return process;
 }

 private void showProcessData()
 {
 try {

 //Call the method For Read the process
 String proc = GetProcessListData();

 //Create Streams for write processes
 //Given the filepath which you need.Its store the file at where your java file.
 OutputStreamWriter outputStreamWriter =
 new OutputStreamWriter(new FileOutputStream("ProcessList.txt"));
 BufferedWriter bufferedWriter = new BufferedWriter(outputStreamWriter);

 //Tokenize the output for write the processes
 StringTokenizer st = new StringTokenizer(proc, "&");

 while (st.hasMoreTokens()) {
 bufferedWriter.write(st.nextToken());  //Write the data in file
 bufferedWriter.newLine();               //Allocate new line for next line
 }

 //Close the outputStreams
 bufferedWriter.close();
 outputStreamWriter.close();

 } catch (IOException ioe) {
 ioe.printStackTrace();
 }

 }

 public static void main(String[] args)
 {
 GetProcessList gpl = new GetProcessList();
 gpl.showProcessData();

 }
}
weil bei mir beim durchführen anstadt die prozesse usw. nur :
Code:
Processes Reading is started...
Processes are read.
rauskommt

schonmal danke im voraus für die hilfe :
JohnnyG ist offline   Mit Zitat antworten
Alt 07.06.10, 23:00   #2 (permalink)
Senior Member
 
Benutzerbild von odigo
 
Registriert seit: 25.12.04
odigo Leistung: 8086odigo Leistung: 8086
odigo eine Nachricht über ICQ schicken
Likes: 54
Standard

Zitat:
Zitat von JohnnyG Beitrag anzeigen
weil bei mir beim durchführen anstadt die prozesse usw. nur :
Code:
Processes Reading is started...
Processes are read.
rauskommt
Hä? Was erwartest du denn? Es wird ja sonst nix auf die Konsole geschrieben. Das Ergebnis von ps ux wird/soll ja in eine Datei namens ProcessList.txt geschrieben.

Geändert von odigo (07.06.10 um 23:10 Uhr)
odigo ist gerade online   Mit Zitat antworten
   
HaBOT
 
- Anzeige -

Werbung ist gerade online    
Alt 08.06.10, 19:19   #3 (permalink)
Themenstarter
 
Registriert seit: 07.06.10
JohnnyG Leistung: Facit NTK
Likes: 0
Standard

achsoo ohh
ok danke
könntest du mir sagen wie ich das jetzt in einen sordentlichen array bekomme??
das ich das danach in eine jtabel machen kann ??
JohnnyG ist offline   Mit Zitat antworten
Alt 08.06.10, 19:46   #4 (permalink)
Senior Member
 
Benutzerbild von odigo
 
Registriert seit: 25.12.04
odigo Leistung: 8086odigo Leistung: 8086
odigo eine Nachricht über ICQ schicken
Likes: 54
Standard

Naja, GetProcessListData liefert dir ja einen String in dem jede Zeile von ps ux mittels "&" getrennt ist. Ich wüde den String nicht mittels StringTokenizer behandeln sondern einfach am "&" aufsplitten. Dadurch erhält man sofort ein String-Array.

Code:
String[] arr = GetProcessListData().split("&");
Damit könntest für jede Zeile aus der Ausgabe von ps ux eine Row in einer JTable erzeugen. Ob du dir das so gedacht hast kann ich nur vermuten.

Wenn du das mit dem Datei rausschreiben nicht brauchst würd ichs wieder ausbauen
odigo ist gerade online   Mit Zitat antworten
Alt 08.06.10, 20:04   #5 (permalink)
Themenstarter
 
Registriert seit: 07.06.10
JohnnyG Leistung: Facit NTK
Likes: 0
Standard

nicht in einen String [][] arr rein ??
und ne andere frage wie kann ich die prozesse zähle bin iwie grade kläglich am schreitern !!!
JohnnyG ist offline   Mit Zitat antworten
Alt 08.06.10, 20:24   #6 (permalink)
Themenstarter
 
Registriert seit: 07.06.10
JohnnyG Leistung: Facit NTK
Likes: 0
Standard

aber wenn ich das so mache wie du das geschrieben hast bekomm ich die kompltte zeile
gibs auch ne möglichkeit jedes einzelnde attribut zu bekommen ??

Geändert von JohnnyG (08.06.10 um 23:29 Uhr)
JohnnyG ist offline   Mit Zitat antworten
Alt 09.06.10, 00:02   #7 (permalink)
Senior Member
 
Benutzerbild von odigo
 
Registriert seit: 25.12.04
odigo Leistung: 8086odigo Leistung: 8086
odigo eine Nachricht über ICQ schicken
Likes: 54
Standard

Zitat:
Zitat von JohnnyG Beitrag anzeigen
gibs auch ne möglichkeit jedes einzelnde attribut zu bekommen ??
Grundsätzlich ja, damit hättest du auch dein String[][]. Das könnte man auch mit split machen. Dort kannst du einen regulären Ausdruck angeben (was der API-Referenz zu entnehmen ist). Du müsstest sagen "splite an jeder Stelle in einer Zeile an der mehrere Blanks hintereinander vorkommen". Wie du das machst findest jetzt am besten selbst raus.

PS: Wenn du willst daß ich dir dein Programm schreibe können wir gerne über Stundenlöhne verhandeln
PPS: Lass es mir ständig unsinnige PMs zu schreiben. Siehe PS. Das hier ist ein Forum, wenn ich antworten will werde ich das schon machen
odigo ist gerade online   Mit Zitat antworten
Alt 09.06.10, 00:03   #8 (permalink)
Moderator
 
Benutzerbild von lightsaver
 
Registriert seit: 19.06.06
lightsaver Leistung: Pentium Ilightsaver Leistung: Pentium Ilightsaver Leistung: Pentium I
Likes: 51
Standard

Ich kenne die genaue Ausgabe jetzt nicht, aber wenn es so aussieht, wie unter Windows, wenn ich "tasklist" aufrufe, dann könntest du bei " " splitten, ggf. ist das auch ein Tab ("\t" wenn ich mich nicht täusche).

Gucke dir doch erstmal deine genaue Ausgabe an und suche nach einer Regel, wonach du das Aufteilen kannst. Die grundsätzliche Art, das zu tun, hast du ja erklärt bekommen.
lightsaver ist offline   Mit Zitat antworten
Antwort

Stichworte
hilfe, java, tasklist.exe
   
- Anzeige -

Werbung ist gerade online    

[HaBo] » Software Home » Applikationen » HILFE tasklist.exe mit java verarbeiten
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind aus
Pingbacks sind aus
Refbacks sind aus



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61