Andere Programme ausführen

Hey Leute, ich suche ein bisschen Hilfe.
Ich kenn mich mit den Thema nicht all zu gut aus darum frage ich mich, ob es möglich wäre,
das ich Befehle die ich in der Windows Console benutzte mit Java ausführen kann?

Also es geht darum, unserer Firma ist ein Filmhandel und muss sich immer wieder Preise von Amazon runterladen,
dazu kommt das ich Befehle (Werden Folgen) eingeben muss um auf die ‚‚Daten‘‘ zugreifen zu können.
Die Prozedur ist mir auf dauer einfach zu lästig und ich dachte mir ich könnte evtl da mal irgendwas basteln.

Es geht hauptsächlich um eine Idee, oder eine Frage ob es da eine Möglichkeit gibt, hilfe wird gerne gesehen.

C:\xampp\htdocs\amazon_v3\samples\

php lookup.php input/B-ware-1.csv output/bware2.csv D

Mfg Tru

Ja, sowas kannst du mit dem [japi]ProcessBuilder[/japi] machen.

Ah’ danke, schonmal, ich werd’s mir mal ansehen, bei Fragen melde ich mich wieder. :slight_smile:

Mal angenommen das ist mein ProcessBuilder.
Könnte mir jmd mal direkt sagen, was ich an den Quelltext noch
ändern muss, um Automatisch die Abfrage anzuschmeißen ?

Wäre 'ne große hilfe. :slight_smile:

import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

public class ProcessBuilderDemo {

   public static void main(String[] args) {

      // create a new list of arguments for our process
      List<String> list = new ArrayList<String>();
      list.add("CMD.exe");

      // create a new list that contains a file to open with notepad
      List<String> list2 = new ArrayList<String>();
      list.add("text.txt"); // <- müsste da nicht die Lookup.php hin ? 

      // create the process builder
      ProcessBuilder pb = new ProcessBuilder(list);

      // set the command list
      pb.command(list);

      // print the new command list
      System.out.println("" + pb.command());
   }
}

Ja, nutze einen TimerTask: http://openbook.galileocomputing.de/javainsel9/javainsel_14_007.htm#mj4145d5f8cf91e93d1d41e573c3d11ccc

Und wie hau ich die da am Besten rein ?
Irgendein Tipp ?
Sorry, aber wie gesagt so gut bin ich da nicht drin. :slight_smile:

Steht doch alles in dem Artikel. Du erstellst dir einen TimerTask der definiert, was nach einer bestimmten Zeit ausgeführt werden soll (in deinem Fall das besorgen der Daten). Danach übergibst du diesen TimerTask dem Timer welchen du gerade definiert hast. Sinnvoll wäre noch eine einfache möglichkeit das Ding auch wieder zu beenden:

import java.util.*;
import java.util.Timer;

public class Trash
{
    public static void main(String[] args) {
        TimerTask task = new TimerTask() {
            @Override
            public void run() {
                System.out.println("Hallo Welt");
            }
        };

        Timer timer = new Timer();
        timer.schedule(task, 1000, 1000);

        JOptionPane.showConfirmDialog(null, "Timer beenden");

        timer.cancel();
    }

}

Schau’ vielleicht auch mal in http://forum.byte-welt.net/threads/5164-CMD-fenster-Schließen-nach-abarbeitung-des-Befehls?p=29763&viewfull=1#post29763