Czy ktos wie dlaczego moja mapa nie przyjmuje nastepnego klucza tylko tak jakby sie nadpisuje ? :
prosze o podpowiedzi
package logReaderCode;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Main {
static Map<String, List<String>> myMaps = new HashMap<String, List<String>>();
static BufferedReader br = null;
static BufferedWriter bw = null;
public static void main(String[] args) throws IOException {
String line;
String date = "";
String codeNumber = "";
String saveCustomerId = "";
String time = "";
String[] fileOut = { "C:\\\\foundation\\\\eclipsecode\\\\logReaderCode\\\\output2018-09-10.txt",
"C:\\\\foundation\\\\eclipsecode\\\\logReaderCode\\\\output2018-09-26.txt",
"C:\\\\foundation\\\\eclipsecode\\\\logReaderCode\\\\output2018-09-27.txt",
"C:\\\\foundation\\\\eclipsecode\\\\logReaderCode\\\\output2018-10-02.txt",
"C:\\\\foundation\\\\eclipsecode\\\\logReaderCode\\\\output2018-10-03.txt",
"C:\\\\foundation\\\\eclipsecode\\\\logReaderCode\\\\output2018-10-04.txt",
"C:\\\\foundation\\\\eclipsecode\\\\logReaderCode\\\\output2018-10-12.txt",
"C:\\\\foundation\\\\eclipsecode\\\\logReaderCode\\\\output2018-10-17.txt",
"C:\\\\foundation\\\\eclipsecode\\\\logReaderCode\\\\output2018-10-18.txt",
"C:\\\\foundation\\\\eclipsecode\\\\logReaderCode\\\\output2018-10-20.txt" };
String[] fileTest = { "C:\\\\foundation\\\\eclipsecode\\\\logReaderCode\\\\server.log.2018-09-10",
"C:\\\\foundation\\\\eclipsecode\\\\logReaderCode\\\\server.log.2018-09-26",
"C:\\\\foundation\\\\eclipsecode\\\\logReaderCode\\\\server.log.2018-09-27",
"C:\\\\foundation\\\\eclipsecode\\\\logReaderCode\\\\server.log.2018-10-02",
"C:\\\\foundation\\\\eclipsecode\\\\logReaderCode\\\\server.log.2018-10-03",
"C:\\\\foundation\\\\eclipsecode\\\\logReaderCode\\\\server.log.2018-10-04",
"C:\\\\foundation\\\\eclipsecode\\\\logReaderCode\\\\server.log.2018-10-12",
"C:\\\\foundation\\\\eclipsecode\\\\logReaderCode\\\\server.log.2018-10-17",
"C:\\\\foundation\\\\eclipsecode\\\\logReaderCode\\\\server.log.2018-10-18",
"C:\\\\foundation\\\\eclipsecode\\\\logReaderCode\\\\server.log.2018-10-20" };
br = new BufferedReader(new FileReader(fileTest[0]));
bw = new BufferedWriter(new FileWriter(fileOut[0]));
while ((line = br.readLine()) != null) {
Matcher exception = Pattern.compile("Exception: com.sbbetting.core.exception.BetSlipCreatorException")
.matcher(line);
Matcher code44 = Pattern.compile("Code: 44").matcher(line);
Matcher code15 = Pattern.compile("Code: 15").matcher(line);
if (exception.find()) {
if (code44.find() || code15.find()) {
date = line.substring(0, 10);
time = line.substring(11, 19);
codeNumber = line.substring(217, 225).replace("Code:", "").replace("ode:", "").replace(",", "").replace("de:", "").replace(" ", "");
line = br.readLine();
line = br.readLine();
saveCustomerId = line.substring(line.indexOf('=') + 1, line.indexOf('=') + 6);
classCodeNumber(codeNumber, date , time , saveCustomerId);
showCodeNumber();
}
}
}
bw.close();
br.close();
}
private static void classCodeNumber(String codeNumber, String date, String time, String customerId) {
List<String> list = new ArrayList<>();
String codeNumberString = "{" + date + "}" + ";" + "{" + time + "}" + ";" + "{" + "id: " + customerId + "}"
+ ";" + "{" + codeNumber + "}" + "\r\n";
if (codeNumber != null || date != null || time != null || customerId != null) {
list.add(codeNumberString);
}
myMaps.put(codeNumber, list);
}
public static List<String> showCodeNumber() throws IOException {
List<String> value = new ArrayList<>();
for (String name : myMaps.keySet()) {
value = myMaps.get(name);
}
bw.write(value.toString().replace("[", "").replace("]", ""));
return value;
}
}
chodzi o ten warunek: bo zapisuje do pliku code15 a chce zeby zapisywalo oba
if (code44.find() || code15.find())