私はこのコードを持っています。 Whisはexcel csvを検索し、ムービー用の字幕がない.txtファイルを作成しています。 1つの映画は1つまたは2つまたは3つまたは4つの字幕を持つことができます。それはすべての言語に対してYまたはNとして書かれています。それは1つの言語(インド語)のために働いています。私は他の言語(GBR、SIM、MYS)をExcelとここに追加しました。メソッドがJavaでオーバーライドするのを防ぐ方法
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());
}
}
実行すると、これだけが表示されます。そして、私はKPP_HeartlessがGBRとSIM字幕を持っていないと確信しています。しかし、それは最後のものだけを示しています。だから、それは以前の記録よりも優先されているようだ。
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
オーバーライドを防止する方法を知っている人はいますか?どうもありがとうございました。
これはどのように適用する必要がありますか?なぜなら、kppKey = tmp [KPPNAME]が存在すればそれをチェックする必要があるからです。存在する場合は、新しい値で上書きせずに新しい値を追加します。そして、私はString **のためにfinalを使うことができるとは思わない**最終的に使用するための誰かの提案に対する返信だった** – Burco
おそらく混乱していて、 '上書き'と '上書き'の違いがあります後者。 –