# datei als parameter übergeben



## lola (2. Jan 2006)

hallo!!!
ich habe ein problem beim lösen meiner informatikaufgabe.
wie kann ich in einer java-datei eine andere datei als parameter übergeben, so dass aus dieser datei einzelne werte ausgelesen werden?
gruß lola


----------



## bygones (2. Jan 2006)

übergabe wie jeder andere Parameter.

Du kannst die Datei entweder als File Objekt übergeben, oder als einfacher String.

Das auslesen hängt von Daten ab.

bei einer txt datei z.b.


```
public void readFile(String file) throws IOException {
  BufferedReader in = new BufferedReader(new FileReader(file));
  String line;

  while((line = in.readLine()) != null) {
    System.out.println(line);
 }
}
```


----------



## Campino (2. Jan 2006)

lola hat gesagt.:
			
		

> hallo!!!
> ich habe ein problem beim lösen meiner informatikaufgabe.
> wie kann ich in einer java-datei eine andere datei als parameter übergeben, so dass aus dieser datei einzelne werte ausgelesen werden?
> gruß lola



Ähm...willst du die Datei als Parameter an dein Java-Programm übergeben oder die datei innerhalb des programmes an eine andere Klasse/Funktion weiterreichen?

1) Du übergibst den dateinamen als parameter, dieser kommt als Element in dem String array den die main()-Methode enthält, an. Aus diesem machst du dann ein Fileobjekt, InputStream usw...

2) Ein Fileobjekt als Parameter für einen Konstruktor/Methode...


----------



## Guest (2. Jan 2006)

danke erst mal für die rasche antwort.
nochmal zur beschreibung meines problems:
ich möchte wie oben beschrieben eine datei als parameter an ein java-programm übergeben.
allerdings habe ich bisher noch nichts von arrays gehört und kann daher deinen vorschlag nicht so ganz nachvollziehen.


----------



## SlaterB (2. Jan 2006)

tja, ohne Java-Kentnisse wird es schwer, eine Java-Aufgabe zu lösen 


```
public class Test {
  public static void main(String[] args) {
      if (args.length > 0) {
         System.out.println("erster Programmparameter: "+args[0]);
      } else {
         System.out.println("Programmstart ohne Parameter");
      } 
  }
}
```
kommt  dir ein simples Programm wie das obige ein bisschen bekannt vor?
eine wichtige Operation zum Start jedes Java-Programms ist die public static void main(String[] args) { },
und darin ist args nunmal ein String-Array, eine Menge von String-Objekten,

wenn man das Programm ohne Parameter ausführt
java Test
dann ist das Array leer (Länge 0),

bei
java Test datei.txt hello Test 
sind dagegen drei Parameter angegeben, args hat die Länge 3 und enthält drei Strings: "datei.txt", "hello" und "Test",
mit args[0] hättest du somit den Dateinamen im Programm zur Verfügung


----------

