Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package Ejercicio7;
- public class Directorio {
- private String nombre;
- private float tamanio;
- static final int MAXCAR=40;
- Directorio(String pNombre,float pTamanio)
- {
- nombre = pNombre;
- tamanio = pTamanio;
- }
- public String toString()
- {
- return nombre + "" + tamanio;
- }
- public void ver(){}
- public int niveles(String d1)
- {
- int contbarras = 1;
- for(int i = 0 ; i < nombre.length() ; i ++){
- if(nombre.charAt(i)=='/')
- {
- contbarras++;
- }
- }
- return contbarras;
- }
- public String ultimo()
- {
- int i = nombre.length()-1;
- int c = 0;
- while( i >= 0 && c ==0 )
- {
- if(nombre.charAt(i)=='/')
- c++;
- else
- i--;
- }
- return nombre.substring(i+1,nombre.length());
- }
- private boolean carIlegales()
- {
- String cadctrl = "@*#";
- int c = 0;
- for(int i = 0 ; i < nombre.length() ; i ++)
- {
- if( cadctrl.indexOf( nombre.substring(i,i+1)) >= 0 )
- {
- c++;
- }
- }
- return c > 0;
- }
- public String dirValido()
- {
- String cadena="";
- int cont=0;
- if(nombre.length()>=MAXCAR)
- {
- cadena+="Error cadena con mas de 40 caracteres. ";
- cont++;
- }
- if(carIlegales()==true)
- {
- cadena+="Error contiene caracteres ilegales. ";
- cont+=cont++;
- }
- if(nombre.indexOf("//")>-1)
- {
- cadena+="Error contiene doble //. ";
- cont+=cont++;
- }
- if(nombre.charAt(0)<='A'&& nombre.charAt(0)>='Z'|| nombre.charAt(1)!=':')
- {
- cadena+= "Error no contiene debido caracter. ";
- cont+=cont++;
- }
- if(cont>0)
- {
- return cadena;
- }
- return "ok";
- }
- public String compactarDir()
- {
- String compactar="";
- char nueva=' ';
- for(int i = 0 ; i < nombre.length() ; i ++)
- {
- nueva=nombre.charAt(i);
- if(nueva!=' ')
- {
- compactar=compactar + nueva;
- }
- }
- return compactar.toLowerCase();
- }
- public static void main(String[] args) {
- Directorio d1=new Directorio("C/xxx//@fdsdf*ttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttsd/cdfsfd ", 600);
- Directorio d2=new Directorio(("M:/xxx/fdDDD Dfsd/cdfs fd/kjcew krg/cdsfd "), 9000);
- System.out.println("EL primer directorio es " + d1);
- System.out.println("EL segundo directorio es " + d2);
- System.out.println("El resultado de la suma es:" + (d2.tamanio=d2.tamanio +d1.tamanio/2));
- System.out.println("El tamaño de d1 en kbytes es: " + (d1.tamanio)/1024);
- System.out.println("El tamaño de d1 en megabytes es: " + (d1.tamanio/1024)/1024);
- if(d1.niveles("/")>d2.niveles("/"))
- {
- System.out.println("El d1 tiene mas niveles" +d1.nombre);
- }
- else
- System.out.println("El d2 tiene mas niveles" +d2.nombre);
- System.out.println( d1.dirValido());
- System.out.println( d2.dirValido());
- if(!d1.ultimo().equalsIgnoreCase(d2.ultimo()))
- { System.out.println("X" + d1.nombre);
- System.out.println("X" + d2.nombre);
- }
- System.out.println("EL primer directorio es " + d1);
- System.out.println("EL segundo directorio es " + d2);
- System.out.println(d2.compactarDir());
- System.out.println(d1.compactarDir());
- System.out.println("EL primer directorio es " + d1);
- System.out.println("EL segundo directorio es " + d2);
- System.out.println( "Los ultimos caracteres son "+d1.ultimo() );
- System.out.println("Hay caracteres ilegales?¿ " +d1.carIlegales());
- System.out.println("Hay caracteres ilegales?¿ " +d2.carIlegales());
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment