Hilfe - Mit Java Dateien öffnen


  • geheim
  • 2754 Aufrufe 8 Antworten
  • Hilfe - Mit Java Dateien öffnen

    Moinsen,
    wie ist es möglich mit Java eine Datei zu öffnen:
    In etwa so:
    System.out.println ("Datei wird geöffnet");
    öffne datei mit dem pfad: /.../.../.../Datei ?
    Ich kriege das nicht gebacken und finde auch im inet nix :(
    Ideal wäre wenn hier einer den entsprechenden Quellcode schreibt.
    Danke im voraus,
    geheim
    //edit: ich habe vor ner Woche angefangen mit Java also plz nicht so kompliziert
    Desweiteren würde ich gerne wissen wie ich einen double wert einlese:
    Benutzer gibt double wert ein
    Einlesebefehl???
    Ich habe keine Signatur o__0
  • Beispielmethode

    Hier eine Methode, die ich selber geschrieben habe, viel Glück:

    import java.io.BufferedReader;
    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileNotFoundException;
    import java.io.FileOutputStream;
    import java.io.InputStreamReader;
    import java.io.PrintStream;


    private static String ReadFileContents(String sFileName) throws Exception {
    int ib = 0;
    int iLength = 0;
    String sFileContent = "";
    try {
    FileInputStream inFile = new FileInputStream(sFileName);

    BufferedReader inData = new BufferedReader(new InputStreamReader(
    inFile));

    if (inData.ready()) {

    sFileContent = inData.readLine();
    sFileContent += "\r\n";

    while (inData.ready()) {
    sFileContent += inData.readLine();
    sFileContent += "\r\n";
    }

    inData.close();
    inFile.close();
    } else {
    throw new Exception("Problem reading File");
    }

    }//try
    catch (Exception ex) {
    throw new Exception("Problem reading File, \n" + ex.getMessage());
    }
    return sFileContent;
    }
  • Lesen aus einem File

    Hier ein kleiner Beitrag für einen Java-Texteditor:


    Im Hauptprogramm erst folgendes deklarieren:

    TextArea textarea = null;
    textarea = new TextArea("",23,90,TextArea.SCROLLBARS_BOTH);

    In diese Textarea kann dann durch Aufruf der folgenden Klasse aus dem File namens 'filename' gelesen und sofort in den Texteditor übernommen werden.


    import java.applet.*;
    import java.awt.*;
    import java.util.*;
    import java.io.*;
    import java.net.*;



    /**************************************
    Class : ReadFile
    **************************************/

    class ReadFile
    {
    public int available;

    public ReadFile(String filename, TextArea textarea)
    throws IOException, FileNotFoundException
    {
    int buflen = 1024;
    StringBuffer sb = new StringBuffer(buflen);
    File file = new File(filename);
    FileInputStream fis = new FileInputStream(file);
    BufferedInputStream bis = new BufferedInputStream(fis,buflen);
    DataInputStream dis = new DataInputStream(bis);
    String s;
    available = fis.available();
    s = dis.readLine();
    while (s != null)
    {
    sb.append(s);
    sb.append("\n");
    s = dis.readLine();
    }
    textarea.appendText(sb.toString());
    dis.close();
    bis.close();
    fis.close();
    }


    public int Available()
    {
    return available;
    }

    }
  • Hab ein paar Anmerkungen dazu (net böse sein ^^)

    Hast du etwas abgeschnitten?
    Denn benötigt werden nur die Imports:
    import java.awt.*;
    import java.io.*;
    (* zu verwenden ist kein guter Stil sofern es nur ein paar wenige sind)
    Der Rest ist nutzlos.

    Und ansonsten werden hier noch ein paar deprecated Methods verwendet
    wie dis.readLine() (grade keine Ahnung aber wahrscheinlich besser readUTF() oder ähnliches verwenden)
    und textarea.appendText() (besser .append() verwenden)

    Konnts einfach nicht lassen ;)
  • AW:Java-Dateien

    Hallo stelzi,

    ganz herzlichen Dank für die Verbesserungsvorschläge an meinem Quellcode. (Läuft aber nur mit neuen Java's ab 1.5, insofern nicht abwärtskompatibel - hierüber kann man sich natürlich akademisch trefflich streiten).

    Das hilft aber m.E. unserem Fragesteller 'geheim' nicht weiter, den ich nicht unbedingt als absoluten Java-Profi einschätzen möchte.
    Ich zitiere 'geheim': ich habe vor ner Woche angefangen mit Java und bitte genau, dieses zu beachten!

    Wie wär's stattdessen mal mit einem eigenen Beitrag für 'geheim', das wäre sowohl Kreativität in der Programmierung für andere als auch pädagogisches Geschick im Zugehen auf Anfänger hier im Board.

    Mit dem Ansatz 'ich kanns einfach nicht lassen' kommen wir nicht weiter, sieht meiner Meinung nach nur schnell nach persönlicher Disziplinlosigkeit und Besserwisserei aus (ist manchmal nur ein anderes Wort für Expertenwissen). Hilft mir evtl. bei meiner Arbeit, aber nicht dem o.a. Fragesteller 'geheim'.

    Das Stichwort hier heißt: Kreatives Helfen - insbesondere für Anfänger wie 'geheim' - statt Präsentation von Wissen. (Guckt mal her, was ich alles so weiß). Pädagogisch ist das Ganze ja nur als sehr ungeschickt und unerfahren zu bezeichnen.

    Nicht böse sein für den kleinen Nachhilfeuntericht zum Verhalten an diesem Board.

    Mit ganz herzlichen Programmier-Grüßen

    killybilly

    p.s. wer Interesse an meinem vollständigen - inbes. für Anfänger zu verstehenden und umzusetzenden - Java-Quellcode eines Texteditors hat, möge sich bitte bei mir melden. Hat aber nichts mit meinen kleinen Anmerkungen hier zu tun.