要求是:
java从txt文件中提取字符串的数据
然后根据特征分成两个类并且各自创建多个对象
提供的txt文档根据字母y或者n分为两类。
y类有6个属性 n类有9个属性
他们在同一个txt文档中且无法更改。
public static void main(String[] args) throws Exception{
File file1 = new File("C:\\Users\\ASUS\\Desktop\\WEB\\Week1\\test1.txt");
File file2 = new File("C:\\Users\\ASUS\\Desktop\\WEB\\Week1\\test2.txt");
BufferedReader br1 = new BufferedReader(new FileReader(file1));
BufferedReader br2 = new BufferedReader(new FileReader(file2));
String s1 = null;
String s2 = null;
ArrayList<ArtPiece> Collection1 = new ArrayList<>();
ArrayList<ArtPieceOnSale> Collection2 = new ArrayList<>();
s1 = br1.readLine();
s2 = br2.readLine();
while ((s1 = br1.readLine()) != null) {
if (s1.equals("n") || s1 != "y") {
ArtPiece AP1 = new ArtPiece(s1 = br1.readLine(), s1 = br1.readLine(), s1 = br1.readLine(), s1 = br1.readLine(), transformtoInt(s1 = br1.readLine()));
Collection1.add(AP1);
System.out.println(AP1.getAuthor());
}
else if (s1.equals("y") || s1 != "n") {
ArtPieceOnSale sale1 = new ArtPieceOnSale(s1 = br1.readLine(), s1 = br1.readLine(), s1 = br1.readLine(), s1 = br1.readLine(), transformtoInt(s1 = br1.readLine()), transformtoDouble(s1 = br1.readLine()), transformtoBoolean(s1 = br1.readLine()), s1 = br1.readLine());
Collection2.add(sale1);
System.out.println(sale1.getCode());
}
}
}
public static int transformtoInt(String s1) {
s1 = s1.trim();
int foo = Integer.parseInt(s1);
return foo;
}
public static double transformtoDouble(String s1) {
Double d = Double.parseDouble(s1);
return d;
}
public static boolean transformtoBoolean(String s1) {
if (s1 == "Y") {
return true;
}else {
return false;
}
}
}
只能写到这步。不知道怎么将他们分开并创建对象。求解答
先定义好2个类,一个对应y,一个对应n,读出来的内容,直接实例化到对应的对象即可。