Artifacts hinzugefügt (Manifest)

Issues #6 #7 #8 erledigt
This commit is contained in:
2016-05-25 11:35:59 +02:00
parent 8a5e05083d
commit d461961c95
13 changed files with 251 additions and 41 deletions

8
.idea/artifacts/Textanalyse_jar.xml generated Normal file
View File

@@ -0,0 +1,8 @@
<component name="ArtifactManager">
<artifact type="jar" name="Textanalyse:jar">
<output-path>$PROJECT_DIR$/out/artifacts/Textanalyse_jar</output-path>
<root id="archive" name="Textanalyse.jar">
<element id="module-output" name="Textanalyse" />
</root>
</artifact>
</component>

165
.idea/workspace.xml generated
View File

@@ -1,11 +1,21 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ArtifactsWorkspaceSettings">
<artifacts-to-build>
<artifact name="Textanalyse:jar" />
</artifacts-to-build>
</component>
<component name="ChangeListManager">
<list default="true" id="e8709267-1337-4638-85fd-ec9407fa5fdd" name="Default" comment="">
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/src/com/structix/CommandLineInterface.java" />
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/.idea/artifacts/Textanalyse_jar.xml" />
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/src/META-INF/MANIFEST.MF" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/out/production/Textanalyse/com/structix/CommandLineInterface.class" afterPath="$PROJECT_DIR$/out/production/Textanalyse/com/structix/CommandLineInterface.class" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/out/production/Textanalyse/com/structix/Main.class" afterPath="$PROJECT_DIR$/out/production/Textanalyse/com/structix/Main.class" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/.idea/workspace.xml" afterPath="$PROJECT_DIR$/.idea/workspace.xml" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/com/structix/Analyse.java" afterPath="$PROJECT_DIR$/src/com/structix/Analyse.java" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/com/structix/CommandLineInterface.java" afterPath="$PROJECT_DIR$/src/com/structix/CommandLineInterface.java" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/com/structix/Main.java" afterPath="$PROJECT_DIR$/src/com/structix/Main.java" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/com/structix/Menu.java" afterPath="$PROJECT_DIR$/src/com/structix/Menu.java" />
</list>
<ignored path="Textanalyse.iws" />
<ignored path=".idea/workspace.xml" />
@@ -31,8 +41,8 @@
<file leaf-file-name="Main.java" pinned="false" current-in-tab="true">
<entry file="file://$PROJECT_DIR$/src/com/structix/Main.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="143">
<caret line="29" column="30" selection-start-line="29" selection-start-column="30" selection-end-line="29" selection-end-column="30" />
<state relative-caret-position="540">
<caret line="30" column="30" selection-start-line="30" selection-start-column="30" selection-end-line="30" selection-end-column="30" />
<folding />
</state>
</provider>
@@ -41,12 +51,9 @@
<file leaf-file-name="CommandLineInterface.java" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/com/structix/CommandLineInterface.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="216">
<caret line="12" column="172" selection-start-line="12" selection-start-column="172" selection-end-line="12" selection-end-column="172" />
<folding>
<element signature="e#3891#3892#0" expanded="true" />
<element signature="e#3945#3946#0" expanded="true" />
</folding>
<state relative-caret-position="809">
<caret line="109" column="34" selection-start-line="109" selection-start-column="34" selection-end-line="109" selection-end-column="34" />
<folding />
</state>
</provider>
</entry>
@@ -64,8 +71,8 @@
<file leaf-file-name="Analyse.java" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/com/structix/Analyse.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="1294">
<caret line="81" column="52" selection-start-line="81" selection-start-column="52" selection-end-line="81" selection-end-column="52" />
<state relative-caret-position="521">
<caret line="235" column="50" selection-start-line="235" selection-start-column="50" selection-end-line="235" selection-end-column="50" />
<folding />
</state>
</provider>
@@ -94,8 +101,8 @@
<file leaf-file-name="Menu.java" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/com/structix/Menu.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="36">
<caret line="31" column="49" selection-start-line="31" selection-start-column="49" selection-end-line="31" selection-end-column="49" />
<state relative-caret-position="503">
<caret line="113" column="20" selection-start-line="113" selection-start-column="20" selection-end-line="113" selection-end-column="20" />
<folding />
</state>
</provider>
@@ -123,8 +130,8 @@
<list>
<option value="$PROJECT_DIR$/src/com/structix/Menubuilder.java" />
<option value="$PROJECT_DIR$/Test.txt" />
<option value="$PROJECT_DIR$/src/com/structix/Menu.java" />
<option value="$PROJECT_DIR$/src/com/structix/Analyse.java" />
<option value="$PROJECT_DIR$/src/com/structix/Menu.java" />
<option value="$PROJECT_DIR$/src/com/structix/CommandLineInterface.java" />
<option value="$PROJECT_DIR$/src/com/structix/Main.java" />
</list>
@@ -165,6 +172,9 @@
<foldersAlwaysOnTop value="true" />
</navigator>
<panes>
<pane id="Scope" />
<pane id="Scratches" />
<pane id="PackagesPane" />
<pane id="ProjectPane">
<subPane>
<PATH>
@@ -183,6 +193,20 @@
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
</PATH>
<PATH>
<PATH_ELEMENT>
<option name="myItemId" value="Textanalyse" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="Textanalyse" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="src" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
</PATH>
<PATH>
<PATH_ELEMENT>
<option name="myItemId" value="Textanalyse" />
@@ -203,9 +227,6 @@
</PATH>
</subPane>
</pane>
<pane id="Scope" />
<pane id="PackagesPane" />
<pane id="Scratches" />
</panes>
</component>
<component name="PropertiesComponent">
@@ -213,13 +234,16 @@
<property name="WebServerToolWindowFactoryState" value="false" />
<property name="settings.editor.selected.configurable" value="editor.preferences.appearance" />
<property name="settings.editor.splitter.proportion" value="0.2" />
<property name="project.structure.last.edited" value="Artifacts" />
<property name="project.structure.proportion" value="0.0" />
<property name="project.structure.side.proportion" value="0.0" />
</component>
<component name="RunManager" selected="Application.Main">
<configuration default="false" name="Main" type="Application" factoryName="Application" temporary="true">
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
<option name="MAIN_CLASS_NAME" value="com.structix.Main" />
<option name="VM_PARAMETERS" value="" />
<option name="PROGRAM_PARAMETERS" value="Test.txt -b -v -w -ha" />
<option name="PROGRAM_PARAMETERS" value="Beispieltext.txt -tl" />
<option name="WORKING_DIRECTORY" value="file://$PROJECT_DIR$" />
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
<option name="ALTERNATIVE_JRE_PATH" />
@@ -646,11 +670,12 @@
<workItem from="1463735643744" duration="4784000" />
<workItem from="1464077414443" duration="837000" />
<workItem from="1464104232545" duration="6138000" />
<workItem from="1464163482304" duration="4482000" />
</task>
<servers />
</component>
<component name="TimeTrackingManager">
<option name="totallyTimeSpent" value="40159000" />
<option name="totallyTimeSpent" value="44641000" />
</component>
<component name="ToolWindowManager">
<frame x="0" y="0" width="2560" height="1398" extended-state="6" />
@@ -1081,40 +1106,114 @@
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/com/structix/Analyse.java">
<entry file="file://$PROJECT_DIR$/src/com/structix/CommandLineInterface.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="1294">
<caret line="81" column="52" selection-start-line="81" selection-start-column="52" selection-end-line="81" selection-end-column="52" />
<state relative-caret-position="809">
<caret line="109" column="34" selection-start-line="109" selection-start-column="34" selection-end-line="109" selection-end-column="34" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/com/structix/Menu.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="36">
<caret line="31" column="49" selection-start-line="31" selection-start-column="49" selection-end-line="31" selection-end-column="49" />
<state relative-caret-position="503">
<caret line="113" column="20" selection-start-line="113" selection-start-column="20" selection-end-line="113" selection-end-column="20" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/com/structix/CommandLineInterface.java">
<entry file="file://$PROJECT_DIR$/src/com/structix/Analyse.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="216">
<caret line="12" column="172" selection-start-line="12" selection-start-column="172" selection-end-line="12" selection-end-column="172" />
<folding>
<element signature="e#3891#3892#0" expanded="true" />
<element signature="e#3945#3946#0" expanded="true" />
</folding>
<state relative-caret-position="521">
<caret line="235" column="50" selection-start-line="235" selection-start-column="50" selection-end-line="235" selection-end-column="50" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/com/structix/Main.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="143">
<caret line="29" column="30" selection-start-line="29" selection-start-column="30" selection-end-line="29" selection-end-column="30" />
<state relative-caret-position="540">
<caret line="30" column="30" selection-start-line="30" selection-start-column="30" selection-end-line="30" selection-end-column="30" />
<folding />
</state>
</provider>
</entry>
</component>
<component name="masterDetails">
<states>
<state key="ArtifactsStructureConfigurable.UI">
<settings>
<artifact-editor />
<last-edited>Textanalyse:jar</last-edited>
<splitter-proportions>
<option name="proportions">
<list>
<option value="0.2" />
<option value="0.5" />
</list>
</option>
</splitter-proportions>
</settings>
</state>
<state key="FacetStructureConfigurable.UI">
<settings>
<last-edited>No facets are configured</last-edited>
<splitter-proportions>
<option name="proportions">
<list>
<option value="0.2" />
</list>
</option>
</splitter-proportions>
</settings>
</state>
<state key="GlobalLibrariesConfigurable.UI">
<settings>
<splitter-proportions>
<option name="proportions">
<list>
<option value="0.2" />
</list>
</option>
</splitter-proportions>
</settings>
</state>
<state key="JdkListConfigurable.UI">
<settings>
<last-edited>1.8</last-edited>
<splitter-proportions>
<option name="proportions">
<list>
<option value="0.2" />
</list>
</option>
</splitter-proportions>
</settings>
</state>
<state key="ModuleStructureConfigurable.UI">
<settings>
<last-edited>Textanalyse</last-edited>
<splitter-proportions>
<option name="proportions">
<list>
<option value="0.2" />
<option value="0.6" />
</list>
</option>
</splitter-proportions>
</settings>
</state>
<state key="ProjectLibrariesConfigurable.UI">
<settings>
<splitter-proportions>
<option name="proportions">
<list>
<option value="0.2" />
</list>
</option>
</splitter-proportions>
</settings>
</state>
</states>
</component>
</project>

Binary file not shown.

View File

@@ -0,0 +1,3 @@
Manifest-Version: 1.0
Main-Class: com.structix.Main

3
src/META-INF/MANIFEST.MF Normal file
View File

@@ -0,0 +1,3 @@
Manifest-Version: 1.0
Main-Class: com.structix.Main

View File

@@ -160,7 +160,7 @@ public class Analyse {
//Wenn Eintrag an der aktuellen Stelle kleiner wie an der nächsten Stelle ist,
//soll umsortiert (Plätze getauscht) werden
if (anz[z] < anz[z + 1]) {
//Aktueller Eintrag wird ausgelagert
//Aktueller Eintrag wird ausgela-creditsgert
tempint = anz[z];
//Aktueller Eintrag wird mit dem nächsten Eintrag ersetzt
@@ -210,6 +210,53 @@ public class Analyse {
return (int) prozentsatz(anzBuchstabenMLeerzeichen() - anzBuchstabenOLeerzeichen(), anzBuchstabenMLeerzeichen());
}
public String textformatWoerter(int anzahlWoerter) {
String output = "";
int zaehler = 0;
for (int i = 0; i < woerterGesamt.length; i++) {
if (zaehler < anzahlWoerter) {
output += woerterGesamt[i] + " ";
zaehler++;
} else {
output += "\n";
zaehler = 0;
i--;
}
}
return output;
}
public String textFormatBuchstaben(int anzahlBuchstaben) {
String output = "";
if (laengstesWort() <= anzahlBuchstaben) {
int zeile = 0;
for (int i = 0; i < woerterGesamt.length; i++) {
zeile += woerterGesamt[i].length();
if (zeile <= anzahlBuchstaben) {
output += woerterGesamt[i] + " ";
} else {
output += "\n";
zeile = 0;
i--;
}
}
} else {
output = "Anzahl der Buchstaben muss mindestens dem längsten Wort entsprechen(" + laengstesWort() + " Zeichen).";
}
return output;
}
public int laengstesWort() {
int max = 0;
for (int i = 0; i < einzelneWoerter.length; i++) {
if (einzelneWoerter[i].length() > max) {
max = einzelneWoerter[i].length();
}
}
return max;
}
}

View File

@@ -9,8 +9,11 @@ public class CommandLineInterface {
private String cmds[];
private String cmdseinzeln[];
private String kommandos[] = {"-h", "-?", "--help", "--credits", "-w", "-v", "-b", "-ha"};
private String hilfe[] = {"Hilfe", "Hilfe", "Hilfe", "Credits", "Anzahl der Wörter", "Anzahl der verwschiedenen Wörter", "Anzahl der Buchstaben", "Häufigkeit der Wörter"};
private String kommandos[] = {"-h", "-?", "--help", "--credits", "-w", "-v", "-b", "-ha", "-sl", "-tw", "-tb", "-tl"};
private String hilfe[] = {"Hilfe", "Hilfe", "Hilfe", "Credits", "Anzahl der Wörter",
"Anzahl der verwschiedenen Wörter", "Anzahl der Buchstaben", "Häufigkeit der Wörter",
"Anteil der Leerzeichen im Text", "Textformatierung nach Anzahl der Wörter pro Zeile",
"Textformatierung nach Anzahl der Buchstaben pro Zeile", "Textformatierung: Längstes Wort"};
String dateipfad = "";
int dateipfadstelle = -1;
@@ -59,11 +62,10 @@ public class CommandLineInterface {
public void ausfuehren() {
if (gueltigkeit()) {
Scanner eingabe = new Scanner(System.in);
String datei = dateipfad;
if (datei.isEmpty()) {
System.out.println("Geben Sie einen Dateipfad an (relativ sowie absolut erlaubt): ");
Scanner eingabe = new Scanner(System.in);
datei = eingabe.nextLine();
}
Analyse an = new Analyse(datei);
@@ -92,6 +94,20 @@ public class CommandLineInterface {
case "-ha":
System.out.println(an.haeufigkeit());
break;
case "-sl":
System.out.println("Prozentsatz der enthaltenen Leerzeichen: " + an.stats_leerzeichen() + "%");
break;
case "-tw":
System.out.println("Geben Sie bitte die Anzahl der Wörter pro Zeile ein: ");
System.out.println(an.textformatWoerter(eingabe.nextInt()));
break;
case "-tb":
System.out.println("Geben Sie bitte die Anzahl der Zeichen pro Zeile ein: ");
System.out.println(an.textFormatBuchstaben(eingabe.nextInt()));
break;
case "-tl":
System.out.println("Buchstaben des längsten Wortes: " + an.laengstesWort());
break;
}
}
}
@@ -110,7 +126,7 @@ public class CommandLineInterface {
}
private String credits() {
return "Muss noch geschrieben werden.";
return "Entwickler: Janek Schoffit";
}

View File

@@ -28,6 +28,7 @@ package com.structix;
* 17.05.16: 11:59 - 12:37 Uhr
* 20.05.16: 11:18 - 12:32 Uhr
* 24:05.16: 17:46 - 19:17 Uhr
* 25.05.16: 10:47 - 11:32 Uhr
*/
public class Main {

View File

@@ -16,6 +16,9 @@ public class Menu {
//Objekte vom Menubuilder werden erzeugt und mit den Überschriften initialisiert.
Menubuilder mbuilder = new Menubuilder("Textanalyse");
Menubuilder statsmenu = new Menubuilder("Statistiken");
Menubuilder formatmenu = new Menubuilder("Textformatierung");
Scanner eingabe = new Scanner(System.in);
//Objekt der Analyse Klasse wird definiert.
//Es findet keine Deklaration statt, da dieses Objekt einen Dateipfad benötigt.
Analyse an;
@@ -29,7 +32,6 @@ public class Menu {
//Hier wird ein Dateipfad abgefragt
public void dateipfad() {
System.out.println("Geben Sie einen Dateipfad an (relativ sowie absolut erlaubt): ");
Scanner eingabe = new Scanner(System.in);
//Instanz wird mit dem eingegebenen Dateipfad erstellt
an = new Analyse(eingabe.nextLine());
}
@@ -41,7 +43,7 @@ public class Menu {
int auswahl = 0;
//Menü wird mit Einträgen befüllt und auf das Ergebnis "gewartet"
//Die Zeichen für den Rahmen müssen auch angegeben werden
auswahl = mbuilder.menuAnzeigen(new String[]{"Anzahl der Wörter", "Anzahl der verschiedenen Wörter", "Anzahl der Buchstaben", "Statistik Menü"}, "||");
auswahl = mbuilder.menuAnzeigen(new String[]{"Anzahl der Wörter", "Anzahl der verschiedenen Wörter", "Anzahl der Buchstaben", "Statistik Menü", "Textformatierung"}, "||");
switch (auswahl) {
case 1:
ausgabe("Anzahl der Wörter: " + an.laenge());
@@ -57,6 +59,10 @@ public class Menu {
//Aufruf eines weiteren Menüs
while (!statistikmenu());
break;
case 5:
//Aufruf des Untermenüs Textformatierung
while (!textformatmenu());
break;
default:
exit = true;
break; //Nicht zwingend notwendig
@@ -87,6 +93,33 @@ public class Menu {
return exit;
}
public boolean textformatmenu() {
boolean exit = false;
int auswahl = 0;
//Menü wird wieder mit Strings befüllt und der Rückgabe Wert der Variable auswahl zugeordnet
auswahl = formatmenu.menuAnzeigen(new String[]{"Nach Wörtern pro Zeile trennen", "Nach Anzahl der Buchstaben pro Zeile trennen", "Anzahl der Buchstaben des längsten Wortes"}, "||");
//Fallunterscheidung der Variable auswahl
switch (auswahl) {
case 1:
System.out.println("Geben Sie bitte die Anzahl der Wörter pro Zeile ein: ");
System.out.println(an.textformatWoerter(eingabe.nextInt()));
break;
case 2:
System.out.println("Geben Sie bitte die Anzahl der Zeichen pro Zeile ein: ");
System.out.println(an.textFormatBuchstaben(eingabe.nextInt()));
break;
case 3:
System.out.println("Buchstaben des längsten Wortes: " + an.laengstesWort());
break;
default:
exit = true;
break; //Nicht zwingend notwendig
}
//Boolean wird zurückgegeben
return exit;
}
//Methode zur einfacheren Ausgabe
private void ausgabe(String eing) {
System.out.println(eing);