Final Form Vorlesung 1
This commit is contained in:
parent
1313918745
commit
b8396881f7
@ -32,7 +32,7 @@ public class Vorlesung1 {
|
||||
System.out.println("Als CSV?");
|
||||
was = eingabe.readLine();
|
||||
|
||||
if (was == "1") {
|
||||
if (was.equals("1")) {
|
||||
liste.mitTrennzeichen(Integer.parseInt(laenge));
|
||||
} else {
|
||||
liste.mitLeerzeichen(Integer.parseInt(laenge));
|
||||
@ -46,13 +46,16 @@ public class Vorlesung1 {
|
||||
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"};
|
||||
String verzeichnis = System.getProperty("user.dir"); // Aktuelles Arbeitsverzeichnis
|
||||
String[] dateien = new String[]{
|
||||
verzeichnis + File.separator + "12_Dateien_Fuer_Aufgabe1" + File.separator + "Nachnamen.txt",
|
||||
verzeichnis + File.separator + "12_Dateien_Fuer_Aufgabe1" + File.separator + "Vornamen.txt",
|
||||
verzeichnis + File.separator + "12_Dateien_Fuer_Aufgabe1" + File.separator + "Strassen.txt",
|
||||
verzeichnis + File.separator + "12_Dateien_Fuer_Aufgabe1" + File.separator + "PLZOrt.txt"
|
||||
};
|
||||
try {
|
||||
BufferedReader leseQuelle = new LineNumberReader(new FileReader(dateien[index]));
|
||||
while ((zeile=leseQuelle.readLine()) != null) {
|
||||
while ((zeile = leseQuelle.readLine()) != null) {
|
||||
rueckgabe.add(zeile);
|
||||
}
|
||||
leseQuelle.close();
|
||||
@ -77,7 +80,8 @@ public class Vorlesung1 {
|
||||
|
||||
public void mitTrennzeichen(int anzahl) {
|
||||
try {
|
||||
BufferedWriter schreibeDatei = new BufferedWriter(new FileWriter("C:\\Git\\Hochschule\\Semester2\\12_Dateien_Fuer_Aufgabe1\\trennzeichen.txt"));
|
||||
String verzeichnis = System.getProperty("user.dir"); // Aktuelles Arbeitsverzeichnis
|
||||
BufferedWriter schreibeDatei = new BufferedWriter(new FileWriter(verzeichnis + File.separator + "12_Dateien_Fuer_Aufgabe1" + File.separator + "trennzeichen.txt"));
|
||||
Random random = new Random();
|
||||
for (int i = 0; i < anzahl; i++) {
|
||||
StringBuilder fertigerEintrag = new StringBuilder();
|
||||
@ -100,7 +104,7 @@ public class Vorlesung1 {
|
||||
fertigerEintrag.append(plzort.get(random.nextInt(plzort.size())));
|
||||
fertigerEintrag.append("#");
|
||||
// Umsatz
|
||||
fertigerEintrag.append(String.format("%04d", random.nextInt(500, 2000)));
|
||||
fertigerEintrag.append(String.format("%04d", random.nextInt(500) + 1500));
|
||||
fertigerEintrag.append("#");
|
||||
|
||||
schreibeDatei.write(fertigerEintrag.toString());
|
||||
@ -115,7 +119,8 @@ public class Vorlesung1 {
|
||||
|
||||
public void mitLeerzeichen(int anzahl) {
|
||||
try {
|
||||
BufferedWriter schreibeDatei = new BufferedWriter(new FileWriter("C:\\Git\\Hochschule\\Semester2\\12_Dateien_Fuer_Aufgabe1\\festeBreite.txt"));
|
||||
String verzeichnis = System.getProperty("user.dir"); // Aktuelles Arbeitsverzeichnis
|
||||
BufferedWriter schreibeDatei = new BufferedWriter(new FileWriter(verzeichnis + File.separator + "12_Dateien_Fuer_Aufgabe1" + File.separator + "festeBreite.txt"));
|
||||
Random random = new Random();
|
||||
for (int i = 0; i < anzahl; i++) {
|
||||
StringBuilder fertigerEintrag = new StringBuilder();
|
||||
@ -132,7 +137,7 @@ public class Vorlesung1 {
|
||||
// PLZ Ort
|
||||
fertigerEintrag.append(fuelleMitLeerzeichen(plzort, 25));
|
||||
// Umsatz
|
||||
fertigerEintrag.append(String.format("%04d", random.nextInt(500, 2000)));
|
||||
fertigerEintrag.append(String.format("%04d", random.nextInt(500) + 1500));
|
||||
|
||||
schreibeDatei.write(fertigerEintrag.toString());
|
||||
schreibeDatei.newLine();
|
||||
|
27
Semester2/Vorlesung1part2.java
Normal file
27
Semester2/Vorlesung1part2.java
Normal file
@ -0,0 +1,27 @@
|
||||
package Semester2;
|
||||
|
||||
import java.util.StringTokenizer;
|
||||
|
||||
public class Vorlesung1part2 {
|
||||
|
||||
public static void main(String[] args) {
|
||||
String input = "Dieser Text hat 6 Worte und 2 Zahlen.";
|
||||
StringTokenizer tokenizer = new StringTokenizer(input);
|
||||
int zahlcount = 0;
|
||||
int wortcount = 0;
|
||||
|
||||
while (tokenizer.hasMoreTokens()) {
|
||||
String wort = tokenizer.nextToken();
|
||||
if (wort.matches("\\d+")) {
|
||||
System.out.println("ZAHL: " + wort);
|
||||
zahlcount++;
|
||||
} else {
|
||||
System.out.println("WORT: " + wort);
|
||||
wortcount++;
|
||||
}
|
||||
}
|
||||
System.out.println("Zahlen: " + zahlcount);
|
||||
System.out.println("Wörter: " + wortcount);
|
||||
System.out.println("Insgesamt: " + (wortcount+zahlcount));
|
||||
}
|
||||
}
|
@ -1,95 +1,151 @@
|
||||
package Semester2;
|
||||
|
||||
import java.io.*;
|
||||
import java.util.HashMap;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Random;
|
||||
|
||||
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");
|
||||
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 test() {
|
||||
this.nachnamen = erstelleArrays(0);
|
||||
this.vornamen = erstelleArrays(1);
|
||||
this.strassen = erstelleArrays(2);
|
||||
this.plzort = erstelleArrays(3);
|
||||
}
|
||||
|
||||
|
||||
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);
|
||||
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();
|
||||
|
||||
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();
|
||||
}
|
||||
if (was.equals("1")) {
|
||||
liste.mitTrennzeichen(Integer.parseInt(laenge));
|
||||
} else {
|
||||
liste.mitLeerzeichen(Integer.parseInt(laenge));
|
||||
}
|
||||
|
||||
// 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;
|
||||
|
||||
private static ArrayList<String> erstelleArrays(int index) {
|
||||
ArrayList<String> rueckgabe = new ArrayList<>();
|
||||
String zeile;
|
||||
String verzeichnis = System.getProperty("user.dir"); // Aktuelles Arbeitsverzeichnis
|
||||
String[] dateien = new String[]{
|
||||
verzeichnis + File.separator + "12_Dateien_Fuer_Aufgabe1" + File.separator + "Nachnamen.txt",
|
||||
verzeichnis + File.separator + "12_Dateien_Fuer_Aufgabe1" + File.separator + "Vornamen.txt",
|
||||
verzeichnis + File.separator + "12_Dateien_Fuer_Aufgabe1" + File.separator + "Strassen.txt",
|
||||
verzeichnis + File.separator + "12_Dateien_Fuer_Aufgabe1" + File.separator + "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 {
|
||||
String verzeichnis = System.getProperty("user.dir"); // Aktuelles Arbeitsverzeichnis
|
||||
BufferedWriter schreibeDatei = new BufferedWriter(new FileWriter(verzeichnis + File.separator + "12_Dateien_Fuer_Aufgabe1" + File.separator + "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) + 1500));
|
||||
fertigerEintrag.append("#");
|
||||
|
||||
schreibeDatei.write(fertigerEintrag.toString());
|
||||
schreibeDatei.newLine();
|
||||
}
|
||||
schreibeDatei.close();
|
||||
} catch (Exception e) {
|
||||
System.out.println(e.getMessage());
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public void mitLeerzeichen(int anzahl) {
|
||||
try {
|
||||
String verzeichnis = System.getProperty("user.dir"); // Aktuelles Arbeitsverzeichnis
|
||||
BufferedWriter schreibeDatei = new BufferedWriter(new FileWriter(verzeichnis + File.separator + "12_Dateien_Fuer_Aufgabe1" + File.separator + "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) + 1500));
|
||||
|
||||
schreibeDatei.write(fertigerEintrag.toString());
|
||||
schreibeDatei.newLine();
|
||||
}
|
||||
schreibeDatei.close();
|
||||
} catch (Exception e) {
|
||||
System.out.println(e.getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user