G
Guest
Gast
Das Programm gibt in eine Datei aus. Grundsätzlich funktioniert es auch aber...
Das Ouput Directory und der Name der Ausgabe File soll in einer INI Datei hinterlegt werden. Die Werte werden auch richtig eingelesen, jedoch klappt die Ausgabe nicht!?
outdir und outfile sind die Parameter für die Ausgabe...
Das Ouput Directory und der Name der Ausgabe File soll in einer INI Datei hinterlegt werden. Die Werte werden auch richtig eingelesen, jedoch klappt die Ausgabe nicht!?
outdir und outfile sind die Parameter für die Ausgabe...
Code:
import java.io.*;
// **************************************************************************
// Definition class
// **************************************************************************
public class AfiRead4 {
String arrayinno[] = new String [1000];
int records;
String outdir, outfile;
// **************************************************************************
// Main
// **************************************************************************
public static void main(String[] args) {
AfiRead4 dl = new AfiRead4();
dl.LoadIni();
dl.PrtDet();
}
// **************************************************************************
// Load Ini
// **************************************************************************
public void LoadIni() {
try {
BufferedReader ini = new BufferedReader(new FileReader("AFI.INI"));
String satzini;
String set = "_";
int idx = 0;
while((satzini = ini.readLine()) != null)
{
try {
set = satzini.substring(0,7);
}
catch(StringIndexOutOfBoundsException s) {}
// System.out.println(satzini);
if (set.equals("OUT_DIR")) {
outdir = satzini.substring(8,30);
}
if (set.equals("OUT_FIL")) {
outfile = satzini.substring(8,30);
}
System.out.println(set + " " + outdir + " " + outfile);
}
ini.close(); // Close File
records = idx;
}
catch(FileNotFoundException fnfe) {
System.out.println("Datei nicht gefunden!");
}
catch(IOException ioe) {
System.out.println("Fehler beim Lesen!");
}
}
// **************************************************************************
// Load Records in Array
// **************************************************************************
public AfiRead4() {
try {
BufferedReader in1 = new BufferedReader(new FileReader("VendingMachines.txt"));
String satz1;
int idx = 0;
while((satz1 = in1.readLine()) != null)
{
try {
arrayinno[idx] = satz1.substring(0,6);
}
catch(StringIndexOutOfBoundsException s) {
}
idx ++;
}
in1.close(); // Close File
records = idx;
}
catch(FileNotFoundException fnfe) {
System.out.println("Datei nicht gefunden!");
}
catch(IOException ioe) {
System.out.println("Fehler beim Lesen!");
}
}
// **************************************************************************
// Print Inno and Detail records when inno in Array exists.
// **************************************************************************
public void PrtDet() {
try {
BufferedReader in2 = new BufferedReader(new FileReader("AFI.DE1"));
// BufferedWriter out = new BufferedWriter (new FileWriter ("AfiOutput.txt"));
BufferedWriter out = new BufferedWriter (new FileWriter (outdir + outfile));
String satz2, inno, strmano;
int idx;
boolean foundObj = false;
while((satz2 = in2.readLine()) != null) // Loop1
// Read Input File while not eof
{
try {
strmano = satz2.substring(6,12);
if (strmano.equals("A MANO")) {
// Check Object
inno = satz2.substring(13,19);
foundObj = false;
// *System.out.println("Suche Objekt " + inno + " in Array...");
for (idx = 0; idx < records; idx ++) {
// Search Inno in Array
//* System.out.println("Vergleiche " + arrayinno[idx] + " mit " + inno);
try
{
if (arrayinno[idx].equals(inno)) {
//* System.out.println("Objekt " + inno + " in Tabelle gefunden!");
foundObj = true;
//* System.out.println("Variable foundObj: " + foundObj);
//* System.out.println("------------------------------");
break;
}
}
catch(NullPointerException npe) {}
} // for (idx = 0; idx < records; idx ++)
} // if (strmano.equals("A MANO"))
if(foundObj == true) {
// Object found in Array, print Detail Records for Object
out.write(satz2);
// *out.flush();
out.write(System.getProperty("line.separator"));
while((satz2 = in2.readLine()) != null)
// Print Detail Records for Object
{
out.write(satz2);
//*out.flush();
out.write(System.getProperty("line.separator"));
try {
strmano = satz2.substring(6,12);
if (strmano.equals("E MANO")) {
break;
}
}
catch(StringIndexOutOfBoundsException s) {}
catch(NullPointerException npe) {}
} // Loop End
foundObj = false;
// *System.out.println("E N D E: " + "Objekt: " + "-----------");
}
}
catch(StringIndexOutOfBoundsException s) {
}
}
out.close(); // close File
in2.close(); // Close File
}
catch(FileNotFoundException fnfe) {
System.out.println("Datei nicht gefunden!");
}
catch(IOException ioe) {
System.out.println("Fehler beim Lesen!");
}
}
}