como estará ese .txt XD desastroso ? recorrerlo con BufferedReader, abría que ver.
Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.
Mostrar Mensajes MenúCita de: Machacador en 31 Enero 2018, 01:17 AM
Naaaaa... preparence para los autorobos que se van ha hacer los propios chaburros rojo rojitos con su nueva "criptomoneda " llamada Petro... lo de las comillas es porque en realidad, o al parecer, esa mentada criptomoneda tan publicitada no sera sino un token, pues ya están minadas para ponerlas a la venta... vaya usted a saber quien se atreve a comprar algo controlado por nuestro gobierno que destruyo la moneda de uso corriente en la pobre Venezuela... o sea... ellos mismo se despacharan y se darán el vuelto...
![]()
![]()
Saludos.
Cita de: LuisCaTre en 28 Enero 2018, 19:46 PM
Últimamente hé visto en foros sobre que Java morirá en el futuro cercano, así como también hay quienes dicen todo lo contrario, mi pregunta es.. porqué aprender Java en este 2018 cuando ya hay otros lenguajes nuevos que cumplen con la misma función??
Me gusta Java pero esto me preocupa.
Enviado desde mi M1092R mediante Tapatalk
package util;
public interface ShowData {
static <T> void print(final T s) {System.out.print(s);}
static <T> void println(final T s) {System.out.println(s);}
static <T> void err(final T s) {System.err.println(s);}
static <T> void printf(final String format,final T ...s) {
System.out.printf(format,s);
}
}
default void mostrar(String s) {
System.out.println(s);
}
}
package testing;
import util.ShowData;
import javax.swing.*;
import java.io.IOException;
import java.nio.file.*;
import java.util.Scanner;
//La clase Files, no confundir con File de java.io se usa para obtener información sobre archivos y directorios
public class InfoArchivoDirectorio {
private static final Scanner LEER = new Scanner(System.in);
public InfoArchivoDirectorio() throws IOException {
init();
}
private void init() throws IOException {
ShowData.print("Introduce un nombre de directorio o archivo: ");
String s = LEER.next();
//create a PathObject
Path path = Paths.get(s); //Clase Factoria Paths para obtener una referencia a un archivo o directorio
if(Files.exists(path)) { //si la ruta existe, mostrar salida acerca de ella
final StringBuilder sb = new StringBuilder();
sb.append(path.getFileName()).append(" Existe\n");
sb.append(Files.isDirectory(path) ? "Es un directorio": "No es un directorio" ).append("\n");
sb.append(path.isAbsolute() ? "Es una ruta absoluta":"NO es una ruta absoluta").append("\n");
//LinkOption.NOFOLLOW_LINKS para ignorar enlaces simbolicos
//Files.getLastModifiedTime(path,LinkOption.NOFOLLOW_LINKS);
sb.append("Ultima modificación: ").append(Files.getLastModifiedTime(path,LinkOption.NOFOLLOW_LINKS)).append("\n");
sb.append("Tamaño: ").append(Files.size(path)).append(" bytes\n");
sb.append("Obtener ruta absoluta: ").append(path.toAbsolutePath()).append("\n");
ShowData.println(sb.toString());
if(Files.isDirectory(path)) { // listando la salida del directorio
ShowData.println("Directory contents: ");
//objeto para iterar a través de contenidos de los directorios
DirectoryStream<Path> ds = Files.newDirectoryStream(path);
ds.forEach(ShowData::println);
}
} else {
JOptionPane.showMessageDialog(null,"No existe "+path);
}
}
public static void main(String ...PoC) throws IOException {
new InfoArchivoDirectorio();
}
}
package testing;
import testing.Producto;
import util.ShowData;
import javax.swing.*;
import java.io.FileNotFoundException;
import java.util.Formatter;
import java.util.FormatterClosedException;
import java.util.NoSuchElementException;
import java.util.Scanner;
/*
Archivo de acceso secuencial
*/
public class CreateTextFile {
private static Scanner leer;
private static Formatter output; // salida al text del archivo, con formato
private Producto producto = new Producto();
public CreateTextFile(final Scanner scanner) {
this.leer = scanner;
abrirArchivo();
agregarItems();
cerrar();
}
private void abrirArchivo() {
try { //path relativo
output = new Formatter("Producto.txt"); //open de File , la JVM asume que el directorio completo es donde esta aplicación se ejecuta
} catch (SecurityException ex) {
ShowData.err("Acceso denegado. terminando...");
//se origina si el usuario no tiene permisos para escribir aqui
System.exit(1); //termiando el soft
} catch (FileNotFoundException e) {
ShowData.err("Error al abrir, terminando...");
System.exit(1);
}
}
//add info
private void agregarItems() {
int contador = 0;
ShowData.println("Código - " + "Descripción - " + "Peso ");
ShowData.print("_");
while (true) {
try {
//seteamos los valores de producto
producto.setCodigo(leer.nextInt());
producto.setDescripcion(leer.next());
producto.setPeso(leer.nextFloat());
//podemos tambien instanciar asi
//Producto producto = new Producto(leer.nextInt(),leer.next(),leer.nextFloat());
output.format("%d %s %.2f%n", producto.getCodigo(), producto.getDescripcion(), producto.getPeso());
contador ++;
} catch (FormatterClosedException ex) {
ShowData.err("Error escribiendo archivo, terminado");
break;
} catch (NoSuchElementException ex) {
ShowData.err("Entrada invalida, intenta de nuevo"); //Solo si datos incorrectos por teclado
leer.nextLine();// se habilitara el input de nuevo
}
ShowData.print("_");
if (contador > 1) {
ShowData.print("salir ? ");
String salir = leer.next();
if (salir.equalsIgnoreCase("si")) {
break;
} else {
contador = 0; //resetemos el contador para pedir 3 productos mas
leer.nextLine();
ShowData.print("_");
continue;
}
}
}
ShowData.println("Escritura en archivo lista");
JOptionPane.showMessageDialog(null, "Escritura lista");
}
private void cerrar() {
if (output != null)
output.close();
}
public static void main(String... PoCScanner) throws ClassNotFoundException, UnsupportedLookAndFeelException, InstantiationException, IllegalAccessException {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
new CreateTextFile(new Scanner(System.in));
}
import util.ShowData;
import java.io.IOException;
import java.nio.file.Paths;
import java.util.NoSuchElementException;
import java.util.Scanner;
public class LeerArchivo{
private static Scanner leer;
public LeerArchivo() {
abrir();
leer();
cerrar();
}
private void abrir() {
try {
//abrir Archivo Producto.txt , la JVM busca en el mismo directorio donde se
//ejecuta la app, cuando el path no se indica
leer = new Scanner(Paths.get("Producto.txt"));
}catch (IOException e) {
ShowData.err("Error al abrir archivo, terminando...");
System.exit(1);
}
}
//leer info de archivo
private void leer() {
ShowData.printf("%-10s%-12s%10s%n","Codigo","Descripción","Peso");
try {
while(leer.hasNext()) {
//mostrando contenido del archivo
ShowData.printf("%-10d%-12s%10.2f%n",leer.nextInt(),leer.next(),leer.nextFloat());
}
}catch (NoSuchElementException ex) {
ShowData.err("Archivo con formado de manera incorrecta, terminando...");
}catch (IllegalStateException ex) {
ShowData.err("Error leyendo Archivo, terminando...");
}
}
private void cerrar() {
if(leer != null)
leer.close();
}
public static void main(String ...PoC) throws IOException {
new LeerArchivo();
}
}