Ich habe diesen Code. Whis sucht Excel-CSV und erstellt .TXT-Datei mit fehlenden Untertiteln für Filme. Ein Film kann einen oder zwei oder drei oder vier Untertitel haben. In Excel wird es für jede Sprache als Y oder N geschrieben. Es funktioniert für eine Sprache (INDO). Ich habe andere Sprachen (GBR, SIM, MYS) in Excel und hier hinzugefügt.Wie zu verhindern, dass Methode in Java überschreiben
int INDOSUB = 4;
int GBRSUB = 5;
int SIMSUB = 6;
int MYSSUB = 7;
int KPPNAME = 1;
...
//NEW REQUIREMENT, CHECK PLAYLIST FOR MISSING SUBTITLES
for(int i=0; i < assets.size(); i++)
{
try
{
file = new File(assets.get(i));
fileReader = new FileReader(file);
bufferedReader = new BufferedReader(fileReader);
while((line = bufferedReader.readLine()) != null)
{
tmp = line.split(",");
if(tmp.length > 4)
{
String indosubStatus = tmp[INDOSUB];
String gbrsubStatus = tmp[GBRSUB];
String simsubStatus = tmp[SIMSUB];
String myssubStatus = tmp[MYSSUB];
String kppKey = tmp[KPPNAME];
if(indosubStatus.equals("N"))
{
kppSubitleMap.put(kppKey,"NO INDO SUBTITLES");
kppWithMissingSub.put(tmp[KPPNAME],"");
}
if(gbrsubStatus.equals("N"))
{
kppSubitleMap.put(kppKey,"NO GBR SUBTITLES");
kppWithMissingSub.put(tmp[KPPNAME],"");
}
if(simsubStatus.equals("N"))
{
kppSubitleMap.put(kppKey,"NO SIM SUBTITLES");
kppWithMissingSub.put(tmp[KPPNAME],"");
}
if(myssubStatus.equals("N"))
{
kppSubitleMap.put(kppKey,"NO MYS SUBTITLES");
kppWithMissingSub.put(tmp[KPPNAME],"");
}
}
}
}
catch(IOException ex)
{
System.out.println(ex.toString());
}
}
Wenn es läuft, zeigt es nur das an. Und ich bin sicher, KPP_Heartless hat keine GBR- und SIM-Untertitel. Aber es zeigt nur den letzten. So scheint es seine vorrangige vorherige Aufzeichnung.
KPP_HEARTLESS_19 - NO MYS SUBTITLES
DATE/TIME: 1/11/2017 - 23:45:09:20
DATE/TIME: 1/12/2017 - 04:45:07:21
DATE/TIME: 1/12/2017 - 12:30:08:20
DATE/TIME: 1/12/2017 - 17:30:04:19
KPP_LISTEN_07 - NO INDO SUBTITLES
DATE/TIME: 1/12/2017 - 03:30:11:24
DATE/TIME: 1/12/2017 - 07:30:13:13
DATE/TIME: 1/12/2017 - 15:00:10:10
KPP_LISTEN_08 - NO INDO SUBTITLES
DATE/TIME: 1/12/2017 - 20:00:10:05
KPP_HEARTLESS_20 - NO MYS SUBTITLES
DATE/TIME: 1/12/2017 - 23:45:09:19
Weiß jemand, wie es zu verhindern, dass überschreiben? Vielen Dank.
Wie soll ich das anwenden? Weil ich denke .. Ich muss kppKey = tmp [KPPNAME] überprüfen, wenn es existiert. Wenn es vorhanden ist, überschreiben Sie es nicht mit einem neuen Wert, sondern fügen einen neuen Wert hinzu. Und ich glaube nicht, dass ich das Finale für String ** verwenden kann, das war die Antwort für jemanden, der einen Vorschlag für das Finale hat. – Burco
Sie waren wahrscheinlich verwirrt, es gibt einen Unterschied zwischen "überschreiben" und "überschreiben", und das machst du Letzteres. –