Aufgabe 1 fertig!
This commit is contained in:
parent
a11a03f692
commit
1313918745
12
Semester2/12_Dateien_Fuer_Aufgabe1/Nachnamen.TXT
Normal file
12
Semester2/12_Dateien_Fuer_Aufgabe1/Nachnamen.TXT
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
Meier
|
||||||
|
Kaiser
|
||||||
|
Hellmann
|
||||||
|
Fuchs
|
||||||
|
Hampel
|
||||||
|
Hinz
|
||||||
|
Schmidt
|
||||||
|
Andrack
|
||||||
|
Zerlett
|
||||||
|
Novincack
|
||||||
|
Ullmann
|
||||||
|
Mayer
|
25
Semester2/12_Dateien_Fuer_Aufgabe1/PLZOrt.TXT
Normal file
25
Semester2/12_Dateien_Fuer_Aufgabe1/PLZOrt.TXT
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
72160 Horb
|
||||||
|
70179 Stuttgart
|
||||||
|
70191 Stuttgart
|
||||||
|
70192 Stuttgart
|
||||||
|
70193 Stuttgart
|
||||||
|
70195 Stuttgart
|
||||||
|
70197 Stuttgart
|
||||||
|
70199 Stuttgart
|
||||||
|
70327 Stuttgart
|
||||||
|
72070 T<>bingen
|
||||||
|
72072 T<>bingen
|
||||||
|
72074 T<>bingen
|
||||||
|
72076 T<>bingen
|
||||||
|
72181 Starzach
|
||||||
|
72182 Eutingen
|
||||||
|
72184 Eutingen
|
||||||
|
72185 Empfingen
|
||||||
|
72186 Empfingen
|
||||||
|
72186 Weiherhof
|
||||||
|
72187 V<>hringen
|
||||||
|
72189 V<>hringen
|
||||||
|
72202 Nagold
|
||||||
|
72210 Altensteig
|
||||||
|
72213 Altensteig
|
||||||
|
72218 Wildberg
|
11
Semester2/12_Dateien_Fuer_Aufgabe1/Strassen.TXT
Normal file
11
Semester2/12_Dateien_Fuer_Aufgabe1/Strassen.TXT
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
Hauptstr.
|
||||||
|
Dorfstr.
|
||||||
|
Rosenweg
|
||||||
|
Nelkenweg
|
||||||
|
Stuttgarter Str.
|
||||||
|
Ulmer Str.
|
||||||
|
Freiburger Str.
|
||||||
|
M<EFBFBD>nchner Str.
|
||||||
|
Goetheweg
|
||||||
|
Beethovenallee
|
||||||
|
Schillerstr.
|
10
Semester2/12_Dateien_Fuer_Aufgabe1/Vornamen.TXT
Normal file
10
Semester2/12_Dateien_Fuer_Aufgabe1/Vornamen.TXT
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
Frank
|
||||||
|
Steffi
|
||||||
|
Uschi
|
||||||
|
Carola
|
||||||
|
Susanne
|
||||||
|
Marion
|
||||||
|
Ingo
|
||||||
|
Stefan
|
||||||
|
Jochen
|
||||||
|
Holger
|
0
Semester2/12_Dateien_Fuer_Aufgabe1/festeBreite.txt
Normal file
0
Semester2/12_Dateien_Fuer_Aufgabe1/festeBreite.txt
Normal file
0
Semester2/12_Dateien_Fuer_Aufgabe1/trennzeichen.txt
Normal file
0
Semester2/12_Dateien_Fuer_Aufgabe1/trennzeichen.txt
Normal file
@ -1,4 +1,146 @@
|
|||||||
package Semester2;
|
package Semester2;
|
||||||
|
|
||||||
|
import java.io.*;
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.Random;
|
||||||
|
|
||||||
public class Vorlesung1 {
|
public class Vorlesung1 {
|
||||||
|
|
||||||
|
// [6 Kundennummer, 20 Nachname, 20 Vorname, 20 Straße, 5 Hausnummer, 5 PLZ, 20 Ort, int Umsatz]
|
||||||
|
|
||||||
|
private ArrayList<String> nachnamen = erstelleArrays(0);
|
||||||
|
private ArrayList<String> vornamen = erstelleArrays(1);
|
||||||
|
private ArrayList<String> strassen = erstelleArrays(2);
|
||||||
|
private ArrayList<String> plzort = erstelleArrays(3);
|
||||||
|
|
||||||
|
public Vorlesung1() {
|
||||||
|
this.nachnamen = erstelleArrays(0);
|
||||||
|
this.vornamen = erstelleArrays(1);
|
||||||
|
this.strassen = erstelleArrays(2);
|
||||||
|
this.plzort = erstelleArrays(3);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public static void main(String[] args) {
|
||||||
|
Vorlesung1 liste = new Vorlesung1();
|
||||||
|
try {
|
||||||
|
BufferedReader eingabe = new BufferedReader(new InputStreamReader(System.in));
|
||||||
|
String laenge;
|
||||||
|
System.out.println("Wie viele Testsätze: ");
|
||||||
|
laenge = eingabe.readLine();
|
||||||
|
String was;
|
||||||
|
System.out.println("Als CSV?");
|
||||||
|
was = eingabe.readLine();
|
||||||
|
|
||||||
|
if (was == "1") {
|
||||||
|
liste.mitTrennzeichen(Integer.parseInt(laenge));
|
||||||
|
} else {
|
||||||
|
liste.mitLeerzeichen(Integer.parseInt(laenge));
|
||||||
|
}
|
||||||
|
} catch (Exception e) {
|
||||||
|
System.out.println(e.getMessage());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
private static ArrayList<String> erstelleArrays(int index) {
|
||||||
|
ArrayList<String> rueckgabe = new ArrayList<>();
|
||||||
|
String zeile;
|
||||||
|
String[] dateien = new String[]{"C:\\Git\\Hochschule\\Semester2\\12_Dateien_Fuer_Aufgabe1\\Nachnamen.txt",
|
||||||
|
"C:\\Git\\Hochschule\\Semester2\\12_Dateien_Fuer_Aufgabe1\\Vornamen.txt",
|
||||||
|
"C:\\Git\\Hochschule\\Semester2\\12_Dateien_Fuer_Aufgabe1\\Strassen.txt",
|
||||||
|
"C:\\Git\\Hochschule\\Semester2\\12_Dateien_Fuer_Aufgabe1\\PLZOrt.txt"};
|
||||||
|
try {
|
||||||
|
BufferedReader leseQuelle = new LineNumberReader(new FileReader(dateien[index]));
|
||||||
|
while ((zeile=leseQuelle.readLine()) != null) {
|
||||||
|
rueckgabe.add(zeile);
|
||||||
|
}
|
||||||
|
leseQuelle.close();
|
||||||
|
} catch (Exception e) {
|
||||||
|
System.out.println(e.getMessage());
|
||||||
|
}
|
||||||
|
return rueckgabe;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
private static String fuelleMitLeerzeichen(ArrayList<String> liste, int laenge) {
|
||||||
|
Random random = new Random();
|
||||||
|
String neu = liste.get(random.nextInt(liste.size()));
|
||||||
|
if (neu.length() < laenge) {
|
||||||
|
neu = neu + " ".repeat(laenge - neu.length());
|
||||||
|
}
|
||||||
|
return neu;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public void mitTrennzeichen(int anzahl) {
|
||||||
|
try {
|
||||||
|
BufferedWriter schreibeDatei = new BufferedWriter(new FileWriter("C:\\Git\\Hochschule\\Semester2\\12_Dateien_Fuer_Aufgabe1\\trennzeichen.txt"));
|
||||||
|
Random random = new Random();
|
||||||
|
for (int i = 0; i < anzahl; i++) {
|
||||||
|
StringBuilder fertigerEintrag = new StringBuilder();
|
||||||
|
// Kundennummer
|
||||||
|
fertigerEintrag.append(String.format("%06d", i));
|
||||||
|
fertigerEintrag.append("#");
|
||||||
|
// Nachname
|
||||||
|
fertigerEintrag.append(nachnamen.get(random.nextInt(nachnamen.size())));
|
||||||
|
fertigerEintrag.append("#");
|
||||||
|
// Vorname
|
||||||
|
fertigerEintrag.append(vornamen.get(random.nextInt(vornamen.size())));
|
||||||
|
fertigerEintrag.append("#");
|
||||||
|
// Straße
|
||||||
|
fertigerEintrag.append(strassen.get(random.nextInt(strassen.size())));
|
||||||
|
fertigerEintrag.append("#");
|
||||||
|
// Hausnummer
|
||||||
|
fertigerEintrag.append(String.format("%05d", random.nextInt(99999)));
|
||||||
|
fertigerEintrag.append("#");
|
||||||
|
// PLZ Ort
|
||||||
|
fertigerEintrag.append(plzort.get(random.nextInt(plzort.size())));
|
||||||
|
fertigerEintrag.append("#");
|
||||||
|
// Umsatz
|
||||||
|
fertigerEintrag.append(String.format("%04d", random.nextInt(500, 2000)));
|
||||||
|
fertigerEintrag.append("#");
|
||||||
|
|
||||||
|
schreibeDatei.write(fertigerEintrag.toString());
|
||||||
|
schreibeDatei.newLine();
|
||||||
|
}
|
||||||
|
schreibeDatei.close();
|
||||||
|
} catch (Exception e) {
|
||||||
|
System.out.println(e.getMessage());
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public void mitLeerzeichen(int anzahl) {
|
||||||
|
try {
|
||||||
|
BufferedWriter schreibeDatei = new BufferedWriter(new FileWriter("C:\\Git\\Hochschule\\Semester2\\12_Dateien_Fuer_Aufgabe1\\festeBreite.txt"));
|
||||||
|
Random random = new Random();
|
||||||
|
for (int i = 0; i < anzahl; i++) {
|
||||||
|
StringBuilder fertigerEintrag = new StringBuilder();
|
||||||
|
// Kundennummer
|
||||||
|
fertigerEintrag.append(String.format("%06d", i));
|
||||||
|
// Nachname
|
||||||
|
fertigerEintrag.append(fuelleMitLeerzeichen(nachnamen, 20));
|
||||||
|
// Vorname
|
||||||
|
fertigerEintrag.append(fuelleMitLeerzeichen(vornamen, 20));
|
||||||
|
// Straße
|
||||||
|
fertigerEintrag.append(fuelleMitLeerzeichen(strassen, 20));
|
||||||
|
// Hausnummer
|
||||||
|
fertigerEintrag.append(String.format("%05d", random.nextInt(99999)));
|
||||||
|
// PLZ Ort
|
||||||
|
fertigerEintrag.append(fuelleMitLeerzeichen(plzort, 25));
|
||||||
|
// Umsatz
|
||||||
|
fertigerEintrag.append(String.format("%04d", random.nextInt(500, 2000)));
|
||||||
|
|
||||||
|
schreibeDatei.write(fertigerEintrag.toString());
|
||||||
|
schreibeDatei.newLine();
|
||||||
|
}
|
||||||
|
schreibeDatei.close();
|
||||||
|
} catch (Exception e) {
|
||||||
|
System.out.println(e.getMessage());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
95
Semester2/test.java
Normal file
95
Semester2/test.java
Normal file
@ -0,0 +1,95 @@
|
|||||||
|
package Semester2;
|
||||||
|
|
||||||
|
import java.io.*;
|
||||||
|
import java.util.HashMap;
|
||||||
|
|
||||||
|
public class test {
|
||||||
|
|
||||||
|
// [6 Kundennummer, 20 Nachname, 20 Vorname, 20 Straße, 5 Hausnummer, 5 PLZ, 20 Ort, int Umsatz]
|
||||||
|
|
||||||
|
public static void main (String[] args) {
|
||||||
|
try {
|
||||||
|
File festeBreite = new File("C:\\Git\\Hochschule\\Semester2\\12_Dateien_Fuer_Aufgabe1\\festeBreite.txt");
|
||||||
|
File trennzeichen = new File("C:\\Git\\Hochschule\\Semester2\\12_Dateien_Fuer_Aufgabe1\\trennzeichen.txt");
|
||||||
|
festeBreite.createNewFile();
|
||||||
|
trennzeichen.createNewFile();
|
||||||
|
} catch (Exception e) {
|
||||||
|
System.out.println(e.getMessage());
|
||||||
|
System.out.println("error");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
HashMap<String, Integer> dateien = new HashMap<>();
|
||||||
|
dateien.put("C:\\Git\\Hochschule\\Semester2\\12_Dateien_Fuer_Aufgabe1\\Nachnamen.txt", 20);
|
||||||
|
dateien.put("C:\\Git\\Hochschule\\Semester2\\12_Dateien_Fuer_Aufgabe1\\PLZOrt.txt", 20);
|
||||||
|
dateien.put("C:\\Git\\Hochschule\\Semester2\\12_Dateien_Fuer_Aufgabe1\\Strassen.txt", 20);
|
||||||
|
dateien.put("C:\\Git\\Hochschule\\Semester2\\12_Dateien_Fuer_Aufgabe1\\Vornamen.txt", 20);
|
||||||
|
|
||||||
|
try {
|
||||||
|
// eröffne leere Temp Datei
|
||||||
|
File tempDatei = File.createTempFile("temp_", ".txt");
|
||||||
|
|
||||||
|
for (String i : dateien.keySet()) {
|
||||||
|
// eröffne Zieldatei
|
||||||
|
BufferedWriter schreibeDatei = new BufferedWriter(new FileWriter("C:\\Git\\Hochschule\\Semester2\\12_Dateien_Fuer_Aufgabe1\\festeBreite.txt"));
|
||||||
|
|
||||||
|
String zeile;
|
||||||
|
String tempzeile;
|
||||||
|
|
||||||
|
// lese Quelle und Temp aus
|
||||||
|
BufferedReader leseQuelle = new LineNumberReader(new FileReader(i));
|
||||||
|
BufferedReader leseTemp = new BufferedReader(new FileReader(tempDatei));
|
||||||
|
|
||||||
|
while ((zeile=leseQuelle.readLine()) != null) {
|
||||||
|
int laenge = zeile.length();
|
||||||
|
if (laenge <= dateien.get(i)) {
|
||||||
|
// Leerzeichen hinzufügen
|
||||||
|
zeile = mitLeerzeichen(dateien.get(i)-laenge, zeile);
|
||||||
|
|
||||||
|
// Füge Quelle und Temp zusammen in Zieldatei
|
||||||
|
if ((tempzeile=leseTemp.readLine()) != null) {
|
||||||
|
schreibeDatei.write(tempzeile+zeile);
|
||||||
|
} else {
|
||||||
|
zeile = mitLeerzeichen(dateien.get(i), zeile);
|
||||||
|
schreibeDatei.write(zeile);
|
||||||
|
}
|
||||||
|
schreibeDatei.newLine();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Füge den Rest der Tempdatei ein
|
||||||
|
while ((tempzeile=leseTemp.readLine()) != null) {
|
||||||
|
tempzeile = mitLeerzeichen(dateien.get(i), tempzeile);
|
||||||
|
schreibeDatei.write(tempzeile);
|
||||||
|
schreibeDatei.newLine();
|
||||||
|
}
|
||||||
|
|
||||||
|
schreibeDatei.close();
|
||||||
|
leseQuelle.close();
|
||||||
|
leseTemp.close();
|
||||||
|
|
||||||
|
// Lese Zieldatei und kopiere in Temp
|
||||||
|
BufferedReader leseDatei = new BufferedReader(new FileReader("C:\\Git\\Hochschule\\Semester2\\12_Dateien_Fuer_Aufgabe1\\festeBreite.txt"));
|
||||||
|
BufferedWriter schreibeTemp = new BufferedWriter(new FileWriter(tempDatei));
|
||||||
|
while ((zeile=leseDatei.readLine()) != null) {
|
||||||
|
schreibeTemp.write(zeile);
|
||||||
|
schreibeTemp.newLine();
|
||||||
|
}
|
||||||
|
schreibeTemp.close();
|
||||||
|
leseDatei.close();
|
||||||
|
}
|
||||||
|
} catch (Exception e) {
|
||||||
|
System.out.println(e.getMessage());
|
||||||
|
System.out.println("error");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static String mitLeerzeichen(int laenge, String daten) {
|
||||||
|
for (int i = 0; i <= laenge; i++) {
|
||||||
|
daten = daten.concat(" ");
|
||||||
|
}
|
||||||
|
return daten;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user