import java.io.IOException; // exceptions
import java.io.*; // clase: File
class Main{
//class ProductoActulizarApp{
public static void main(String[] args){
DB db = new DB();
db.actualizar("p1.txt", "p2.txt", "p3.txt");
}
}
class Producto{
int codigo;
String descripcion;
int precio;
String fecha;
Producto(int codigo, String descripcion, int precio, String fecha){
this.codigo = codigo;
this.descripcion = descripcion;
this.precio = precio;
this.fecha = fecha;
}
public String toString(){
return codigo + "\t" + descripcion + "\t" + precio + "\t" + fecha;
}
}
class DB{
void actualizar(String file1, String file2, String file3){
try (
BufferedReader in1 = new BufferedReader(new FileReader(file1));
BufferedReader in2 = new BufferedReader(new FileReader(file2));
PrintWriter out = new PrintWriter (new BufferedWriter(new FileWriter(file3)));
){
String[] p1, p2; // para "picar" los registros (lines) leÃdos
int com;
String line1 = in1.readLine();
String line2 = in2.readLine();
while(line1 != null && line2 != null) {
p1 = line1.split("\t");
p2 = line2.split("\t");
com = p1[0].compareTo(p2[0]); // p1[0] y p2[0] son los códigos de productos
if (com <0){
out.println(line1);
line1 = in1.readLine();
} else if(com == 0) {
out.println(line2);
line1 = in1.readLine();
line2 = in2.readLine();
} else {
out.println(line2);
line2 = in2.readLine();
}
}
while(line1 != null) {
out.println(line1);
line1 = in1.readLine();
}
while(line2 != null) {
out.println(line2);
line2 = in2.readLine();
}
} catch (IOException e){ System.out.println(e);}
}
}
0 D0 10 2021/11/2
1 D1 11 2021/11/3
2 D2 12 2021/11/4
4 D4 14 2021/11/6
5 D5 15 2021/11/7
0 D0 20 2021/12/2
3 D3 23 2021/12/5
6 D6 26 2021/12/8