El dom, 21-03-2010 a las 14:13 -0600, Mauricio Baeza escribió: > El 21 de marzo de 2010 02:46, José Jesús <[email protected]> escribió: > > > Gracias Mauricio, > > > > Efectivamente el fichero es mayor de 65535 (desconocía este dato, como > > ya apunto Ariel). Esta fue mi primera apuesta, pero el archivo es algo > > mayor, puede contener entre 300 y 600 registros de 500 caracteres. > > > > > Te recomiendo usar Python, con la siguiente macro importe más de 700 > registros de 500 cada uno sin problemas: > > def LeerArchivo(): > # Accedemos al modelo del documento actual > model = XSCRIPTCONTEXT.getDocument() > # Accedemos a la primer hoja del documento > hoja = model.getSheets().getByIndex(0) > sRuta = "/home/mau/Desktop/archivo.txt" > archivo = open( sRuta, "r" ) > sContenido = archivo.read() > lineas = len(sContenido) / 500 + 1 > co1 = 0 > while co1 < lineas : > # Accedemos a la celda A1 de la hoja > celda = hoja.getCellByPosition( 0, co1) > sTmp = sContenido[co1*500:co1*500+500] > # Escribimos en la celda > celda.setString( sTmp ) > co1 = co1 + 1 > return None > > Para usar la macro anterior sigue esta guía: > http://wiki.services.openoffice.org/wiki/OOoES/Desarrollo/PyUNO_ES > > Saludos > > Mauricio
Perfecto, una única pega, como sospechaba los caracteres especiales (ñ, Ñ y acentos) no se muestran correctamente. ¿Hay alguna forma de cambiar la página de códigos como en Basic mediante "setEncoding"? Una dificultad añadida, además de mi poco conocimiento de python (lo que siempre es superable,... :D supongo...) es que en entornos Windows habrá que instalar python, que tampoco es algo insalvable. Respecto a realizarlo con Java, aquí la imposibilidad es mía por desconocimiento. Gracias Mauricio. Saludos, JJ --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
