$
This commit is contained in:
@@ -25,7 +25,7 @@ run:
|
|||||||
make clean
|
make clean
|
||||||
mkdir build/ && mkdir docs/
|
mkdir build/ && mkdir docs/
|
||||||
${JAVAC} ${JAVAC_OPTIONS} ${SETTINGS} ${GRAPHICS} ${STORAGE} ${EXCEPTION} ${MAIN}
|
${JAVAC} ${JAVAC_OPTIONS} ${SETTINGS} ${GRAPHICS} ${STORAGE} ${EXCEPTION} ${MAIN}
|
||||||
cd build && java fr.sae.JSonInspector.Main /home/bilal-linux/toFormat.json && cd ..
|
cd build && java fr.sae.JSonInspector.Main && cd ..
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm -rf build && rm -rf docs
|
rm -rf build && rm -rf docs
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -1,112 +0,0 @@
|
|||||||
package fr.sae.JSonInspector;
|
|
||||||
|
|
||||||
import java.net.URL;
|
|
||||||
import java.io.InputStream;
|
|
||||||
import java.io.IOException;
|
|
||||||
|
|
||||||
public class DisplayConsole {
|
|
||||||
private URL jsonFile;
|
|
||||||
|
|
||||||
public DisplayConsole(URL jsonFile) {
|
|
||||||
this.jsonFile = jsonFile;
|
|
||||||
|
|
||||||
if (this.Display() == null) {
|
|
||||||
System.out.println("[!] Probleme lors du formatage de : " + this.jsonFile.getFile());
|
|
||||||
} else {
|
|
||||||
System.out.println(this.Display());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public String Display() {
|
|
||||||
try {
|
|
||||||
InputStream jsonReader = this.jsonFile.openStream();
|
|
||||||
StringBuilder containerJsonFormatted = new StringBuilder();
|
|
||||||
|
|
||||||
int indentLevel = 0;
|
|
||||||
boolean currentlyInRecord = false;
|
|
||||||
|
|
||||||
int cursor = jsonReader.read();
|
|
||||||
|
|
||||||
while (cursor != -1) {
|
|
||||||
char c = (char) cursor;
|
|
||||||
|
|
||||||
switch (c) {
|
|
||||||
case '{': {
|
|
||||||
containerJsonFormatted.append(c);
|
|
||||||
|
|
||||||
if (!currentlyInRecord) {
|
|
||||||
containerJsonFormatted.append("\n");
|
|
||||||
indentLevel++;
|
|
||||||
this.addIndentation(containerJsonFormatted, indentLevel);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case '[': {
|
|
||||||
containerJsonFormatted.append(c);
|
|
||||||
if (!currentlyInRecord) {
|
|
||||||
containerJsonFormatted.append("\n");
|
|
||||||
indentLevel++;
|
|
||||||
this.addIndentation(containerJsonFormatted, indentLevel);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case '"': {
|
|
||||||
currentlyInRecord = !currentlyInRecord;
|
|
||||||
containerJsonFormatted.append(c);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case ':': {
|
|
||||||
containerJsonFormatted.append(c).append(" ");
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case ',': {
|
|
||||||
containerJsonFormatted.append(c);
|
|
||||||
if (!currentlyInRecord) {
|
|
||||||
containerJsonFormatted.append("\n");
|
|
||||||
this.addIndentation(containerJsonFormatted, indentLevel);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case ']': {
|
|
||||||
if (!currentlyInRecord) {
|
|
||||||
containerJsonFormatted.append("\n");
|
|
||||||
indentLevel--;
|
|
||||||
this.addIndentation(containerJsonFormatted, indentLevel);
|
|
||||||
}
|
|
||||||
|
|
||||||
containerJsonFormatted.append(c);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case '}': {
|
|
||||||
if (!currentlyInRecord) {
|
|
||||||
containerJsonFormatted.append("\n");
|
|
||||||
indentLevel--;
|
|
||||||
this.addIndentation(containerJsonFormatted, indentLevel);
|
|
||||||
}
|
|
||||||
containerJsonFormatted.append(c);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
default: {
|
|
||||||
containerJsonFormatted.append(c);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
cursor = jsonReader.read();
|
|
||||||
}
|
|
||||||
|
|
||||||
jsonReader.close();
|
|
||||||
return containerJsonFormatted.toString();
|
|
||||||
} catch (IOException e) {
|
|
||||||
System.out.println("[!] Fichier " + this.jsonFile.getFile() + " n'existe pas");
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public void addIndentation(StringBuilder sb, int indentLevel) {
|
|
||||||
for (int i = 0; i < indentLevel; i++) {
|
|
||||||
sb.append("\t");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,6 +1,9 @@
|
|||||||
package fr.sae.JSonInspector;
|
package fr.sae.JSonInspector;
|
||||||
|
|
||||||
|
import fr.sae.JSonInspector.Exception.JsonSyntaxException;
|
||||||
import fr.sae.JSonInspector.Graphics.Frame;
|
import fr.sae.JSonInspector.Graphics.Frame;
|
||||||
|
import fr.sae.JSonInspector.Storage.Tree;
|
||||||
|
|
||||||
import java.io.*;
|
import java.io.*;
|
||||||
import java.net.MalformedURLException;
|
import java.net.MalformedURLException;
|
||||||
import java.net.URL;
|
import java.net.URL;
|
||||||
@@ -12,10 +15,15 @@ public class Main {
|
|||||||
} else {
|
} else {
|
||||||
try {
|
try {
|
||||||
URL url = new File(args[0]).toURI().toURL();
|
URL url = new File(args[0]).toURI().toURL();
|
||||||
new DisplayConsole(url);
|
String toSend = getJsonInOneLine(url);
|
||||||
|
Tree receive = new Tree(toSend);
|
||||||
|
System.out.println(receive);
|
||||||
} catch (MalformedURLException e) {
|
} catch (MalformedURLException e) {
|
||||||
System.err.println("[!] Chemin du fichier invalide");
|
System.err.println("[!] Chemin du fichier invalide");
|
||||||
System.exit(1);
|
System.exit(1);
|
||||||
|
} catch (JsonSyntaxException e) {
|
||||||
|
System.err.println("[!] Syntaxe du fichier JSON invalide");
|
||||||
|
System.exit(1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user