S
Spellsleeper
Gast
Hallo,
kann mir jemand helfen? Mein Problem besteht darin eine TXT.Datei binär einzulesen und zur gleichen Zeit zu wissen wo das Programm im Text steht um diesen zu splitten.Ich habe es schon mit Text versucht aber leider werden die Sonderzeichen dabei immer verändert.Es folgt unten der Versuch auf Text-Ebene der so ähnlich binär durchgeführt werden muss.
Und wie gesagt mein Problem liegt nicht darin die Klasse BufferedInputStream nicht zu kennen sondern wie ich es bei der Durchführung es schaffe die Datei (im binärem Stream) an der richtigen Stelle des Textes zu trennen.Vielen Dank an alle die sich des Problems annehmen.???:L
kann mir jemand helfen? Mein Problem besteht darin eine TXT.Datei binär einzulesen und zur gleichen Zeit zu wissen wo das Programm im Text steht um diesen zu splitten.Ich habe es schon mit Text versucht aber leider werden die Sonderzeichen dabei immer verändert.Es folgt unten der Versuch auf Text-Ebene der so ähnlich binär durchgeführt werden muss.
Und wie gesagt mein Problem liegt nicht darin die Klasse BufferedInputStream nicht zu kennen sondern wie ich es bei der Durchführung es schaffe die Datei (im binärem Stream) an der richtigen Stelle des Textes zu trennen.Vielen Dank an alle die sich des Problems annehmen.???:L
Java:
package version1;
import java.io.*;
public class Reader {
public void read(String oldPath) {
String temp;
boolean objectEnd=false;
boolean realEnd=false;
File directory=new File("C:\\NavObjekte");
if(!directory.exists()){
directory.mkdir();}
Writer writer = new Writer();
try {
BufferedReader br = new BufferedReader(new FileReader(new File(oldPath)));
int emptyLines = 0;
do {
temp = br.readLine();
if (temp.equals(null)) {
emptyLines++;
}
if (temp.contains("OBJECT") && !(temp.contains(" OBJECT"))) {
objectEnd=false;
int index1=temp.indexOf(" ");
int index2=temp.indexOf(" ",index1+1);
int index3=temp.indexOf(" ",index2+1);
String temp1=temp.substring(index1, index2);
temp1+=(temp.substring(index2,index3));
writer.produce("C:\\NavObjekte\\" + temp1.trim()+".txt");
System.out.println(temp1);
}
if (temp.contains("End."))
{
emptyLines = 0;
objectEnd=true;
}
if(objectEnd==true&&emptyLines>=5){
realEnd=true;
}
writer.write(temp);
} while (!(realEnd==true && temp==null));
} catch (FileNotFoundException fnf) {
System.out.println("Datei konnte nicht gefunden werden(fnf).");
fnf.printStackTrace();
} catch (IOException e) {
System.out.println("IO-Fehler!!!");
e.printStackTrace();
}finally{writer.end();}
}
}
Zuletzt bearbeitet von einem Moderator: