//Ejemplo Groovy para leer datos de csv //y convertirlos a comandos SQL // Teqi.org //Archivo a leer def archivoLeido = new File("c:\\datos.csv") //Guardara los comandos SQL def sqlComandos = [] def comandoSql //Por cada linea del archivo, separar los 'tokens' archivoLeido.splitEachLine(",") { tokens -> def nombre = tokens[0] def email = tokens[1] def email2 = tokens[2] //Si el nombre no es nulo if(nombre) { //Dividir el nombre en primero y apellido nombre.splitEachLine(" ") { nombreTokens -> def primernombre = nombreTokens[0] def apellido = nombreTokens[1] //Solo incluye los datos si el nombre y el email contienen informacion if(email&&email.indexOf("@")&&primernombre&&apellido) { comandoSql = "insert usuarios (primernombre, apellido, email) values('"+primernombre+"','"+apellido+"','"+email+"')" if(!sqlComandos.contains(comandoSql)) { sqlComandos.add(comandoSql) } } //Verificar que el email no este en el tercer token if(email2&&email2.indexOf("@")&&primernombre&&apellido){ comandoSql = "insert usuarios (primernombre, apellido, email) values('"+primernombre+"','"+apellido+"','"+email2+"')" if(!sqlComandos.contains(comandoSql)) { sqlComandos.add(comandoSql) } } } } } //Escribir archivo con comandos SQL File archivo = new File("c:\\nuevosDatos.sql") sqlComandos.each{ archivo.append("${it}\n") }