提出詳細
ソースコード
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
public class TeracoFiendNameWriter {
public static void main(String[] args) {
// TODO Auto-generated method stub
File inFile = new File("B.txt");
BufferedReader reader = null;
FileReader fr = null;
File outFile = new File("result.txt");
BufferedWriter writer = null;
FileWriter fw = null;
try {
// リーダ生成
fr = new FileReader(inFile);
reader = new BufferedReader(fr);
// ライター生成
fw = new FileWriter(outFile);
writer = new BufferedWriter(fw);
// テストケース数を読み込み
int testCaseNum = Integer.parseInt(reader.readLine());
// テストケース数の人の中からFriendがつく人物のみを書き出し
for (int i = 1; i <= testCaseNum; i++) {
String caseNumStr = "Case #" + i + ":";
int num = Integer.parseInt(reader.readLine());
List<String> friends = new ArrayList<String>();
for (int j = 0; j < num; j++) {
friends.clear();
String[] who = reader.readLine().split(":");
if ("Friend".equals(who[1])) {
friends.add(who[0]);
}
}
// 標準出力
System.out.println(caseNumStr);
// テキストファイルとして書き込み処理
writer.write(caseNumStr);
writer.newLine();
if (friends.isEmpty()) {
String noFriends = "Not Friends";
System.out.println(noFriends);
writer.write(noFriends);
writer.newLine();
} else {
for (Iterator<String> it = friends.iterator(); it.hasNext();) {
String friendsName = it.next();
System.out.println(friendsName);
writer.write(friendsName);
writer.newLine();
}
}
}
// テキストファイルをフラッシュ
writer.flush();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
// 各IOインスタンスのクローズ処理
try {
if (reader != null)
reader.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
if (reader != null)
writer.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
if (fr != null)
fr.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
if (reader != null)
fw.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
提出情報
提出出力結果
テストケース情報