Il senso dell'ArrayList indirizzi vorrebbe essere un modo per salvare i dati del file che sto leggendo e salvare le sue terne per poi riempire colonne del database! Come dovrei fare? Che logica devo seguire secondo la programmazione ad oggetti?
Non mi è molto chiaro come fare
se mi spieghi cosa intendi e mi dai qualche consiglio sto cercando di imparare! Ti ringrazio molto per il tuo aiuto
Ho provato a correggere:
codice:
public static void main (String [] args) throws Exception {
Class.forName("org.sqlite.JDBC");
Connection c = DriverManager.getConnection("jdbc:sqlite:db1.db");
Statement s = c.createStatement();
ArrayList<String> indirizzi= new ArrayList<String>();
s.executeUpdate("drop table places");
s.executeUpdate("create table places (" +
"nome1 VARCHAR(50) PRIMARY KEY, " +
"localita1 VARCHAR(50), " +
"telefono1 VARCHAR(50))");
BufferedReader br = new BufferedReader( new FileReader("Docs/DB.txt"));
String line;
while((line=br.readLine())!=null){
String t=line.replaceAll(":", " ");
String [] w=t.split(";");
String nome=w[0].trim();
String localita=w[1].trim();
String telefono=w[2].trim();
/*indirizzi.add(nome);
indirizzi.add(localita);
indirizzi.add(telefono);
*/
s.executeUpdate("insert into places(nome1,localita1,telefono1) values('" + nome + "', '" + localita + "', '" + telefono +"')");
}br.close();
}
}
codice:
Exception in thread "main" java.sql.SQLException: near "Tel": syntax error
at org.sqlite.DB.throwex(DB.java:288)
at org.sqlite.NativeDB.prepare(Native Method)
at org.sqlite.DB.prepare(DB.java:114)
at org.sqlite.Stmt.executeUpdate(Stmt.java:102)
at beans.Main.main(Main.java:36)
Ho provato a mettere a posto il file di testo con un replaceAll
codice:
String t=line.replaceAll(":", " ");
ma mi da lo stesso problema.. che cosa fare?
posto anche la classe DB aggiornata:
codice:
public class DB {
private String nome;
private String località;
private String telefono;
public DB(String nome, String località, String telefono) {
this.nome = nome;
this.località = località;
this.telefono = telefono;
}
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public String getLocalità() {
return località;
}
public void setLocalità(String località) {
this.località = località;
}
public String getTelefono() {
return telefono;
}
public void setTelefono(String telefono) {
this.telefono = telefono;
}
public String toString() {
return "DB [nome=" + nome + ", località=" + località + ", telefono="
+ telefono + "]";
}}