Daten in HashMap schreiben

tinella

Erfahrenes Mitglied
Hallo,
ich benötige eure Hilfe... und wär' wirklich sehr froh, könntet ihr mir helfen.

Ich hab ein File mit verschiedenen ID's drin.
Mein Javaprogramm sucht mittels REGEX-Funktion alle ID's raus.
Und Jetzt möchte ich die rausgesuchten ID's in eine HashMap speichern!

Code:

public class PropertyReadOut {
public final static String IDREGEX = "[A-Z]*[0-9][A-Z]*00[0-9]";

public void process() {
try {
BufferedReader propertyinput = new BufferedReader(new FileReader(
"O:/Java/Comparator/Infos/CCContainer.properties"));
String line;
while ((line = propertyinput.readLine()) != null) {
extractID(line);
}
propertyinput.close();
}

// Any other problems
catch (Exception e) {
System.err.println("ERROR" + e);
}
}

//Herausfiltern der ID aus String (IDREGEX):
public void extractID(String paramLine) {
Pattern pattern = Pattern.compile(IDREGEX);
Matcher matcher = pattern.matcher(paramLine);
if (matcher.find()) {
String extractID = paramLine.substring(matcher.start(), matcher
.end());
System.out.println("ID: " + extractID);
}
}

public static void main(String[] args) {
PropertyReadOut pro = new PropertyReadOut();
pro.process();
}
}


Jemand 'ne Idee?


Es grüsst euch,
tinella
 
Tach,
sicher habe ich Ideen. ;)
Was möchtest Du denn in der HashMap speichern? Schon mal in die API geschaut zur Benutzung von HashMaps? HashMaps sind quasi Tabellen mit einer Zuordnung Schlüssel-Wert (Key-Value). Anhand des Schlüssels wird der dazugehörige Wert ausgelesen. Ich frage mich nur, wie bei Dir die Schlüssel und Werte aussehen sollen.
 
thx...

...aber ich hab' das ganze jetzt doch in einen vector reingespeichert. (Dasn Ganze == meine herausgefilterten ID's).

Ich peils einfach nicht. Kann mir jemand helfen? Ich kann das Teil nicht komplilieren, da er jedesmal bringt, dass ich die id falsch initialisiere! Ja wie denn sonst? Bitte helft mir... ich will das Teil in diesem Jahrhundert noch fertig hab'n:-/

Code:
public class PropertyReader {
public final static String IDREGEX = "[A-Z]*[0-9][A-Z]*00[0-9]";

private Vector idList = new Vector();

public void process() {
try {
BufferedReader propertyinput = new BufferedReader(new FileReader(
"O:/Java/Comparator/Infos/CCContainer.properties"));
String line;
while ((line = propertyinput.readLine()) != null) {

String id = extractID(line);
save(extractID(line));
}
propertyinput.close();
}

// Any other problems
catch (Exception e) {
System.err.println("ERROR" + e);
}
}

//Herausfiltern der ID aus String (IDREGEX):
private String extractID(String paramLine) {
String id = new id;
Pattern pattern = Pattern.compile(IDREGEX);
Matcher matcher = pattern.matcher(paramLine);
if (matcher.find()) {
id = paramLine.substring(matcher.start(), matcher.end());
System.out.println("ID: " + id);
}
return(id);
}
private void save(String id) {
if (!idList.contains(id)) {
idList.add(id);
}
}

public static void main(String[] args) {
PropertyReader pro = new PropertyReader();
pro.process();
}
}




--> beim roten Text gibt der mir 'ne Fehlermeldung raus von wegen: "java.lang.Error: Unresolved compilation problem: Syntax error on token "new", delete this token"


*ARGH*


Kann mir pls jmd. sagen WO oder WIE ANDERS ich denn das teil deklarieren soll



Tinella
 
Du sollst ein Buch lesen.

Speziell über Datentypen dann können dir solche absoluten Banalen Fehler wie:
String id = new id;

nicht passieren.
 
Original geschrieben von Christian Fein
Du sollst ein Buch lesen.

Speziell über Datentypen dann können dir solche absoluten Banalen Fehler wie:
String id = new id;

nicht passieren.


Sieht doch schick aus!

Java ist eben nicht wirklich für Anfänger gedacht!
 
Original geschrieben von Fanatico
Sieht doch schick aus!

Java ist eben nicht wirklich für Anfänger gedacht!

Ich habe eher den Eindruck, dass es an manchen Stellen eher für Anfänger einfacher ist als für C++ Ein-/Umsteiger. Dass man sich nicht sofort dran setzten kann ohne auch nur das grundlegendste gelesen zu haben, gilt wohl für jede Programmiersprache.
 
Zurück