<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Linea de Codigo &#187; Java</title>
	<atom:link href="http://lineadecodigo.com/categoria/java/feed/" rel="self" type="application/rss+xml" />
	<link>http://lineadecodigo.com</link>
	<description>/* Programación en la red */</description>
	<lastBuildDate>Tue, 22 May 2012 22:10:09 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Calcular el número feliz con Java</title>
		<link>http://lineadecodigo.com/java/calcular-el-numero-feliz-con-java/</link>
		<comments>http://lineadecodigo.com/java/calcular-el-numero-feliz-con-java/#comments</comments>
		<pubDate>Sat, 05 May 2012 11:18:18 +0000</pubDate>
		<dc:creator>Víctor Cuervo</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[add]]></category>
		<category><![CDATA[contains]]></category>
		<category><![CDATA[dígitos]]></category>
		<category><![CDATA[HashSet]]></category>
		<category><![CDATA[Math]]></category>
		<category><![CDATA[número feliz]]></category>
		<category><![CDATA[numero]]></category>
		<category><![CDATA[pow]]></category>
		<category><![CDATA[Set]]></category>

		<guid isPermaLink="false">http://lineadecodigo.com/?p=4160</guid>
		<description><![CDATA[Ayer hablábamos en el grupo de Facebook sobre Java en Español (¿¿Qué todavía no estás apuntado???) sobre el cálculo de el número feliz con Java. Pero, ¿qué es un número feliz? Si seguimos la descripción de la wikipedia sobre el número feliz, este es aquel que, de forma iterativa, en la suma de sus dígitos [...]]]></description>
			<content:encoded><![CDATA[<div class='dd_post_share'><div class='dd_buttons'><div class='dd_button'><div class='dd-google1-ajax-load dd-google1-4160'></div><g:plusone size='medium' href='http://lineadecodigo.com/java/calcular-el-numero-feliz-con-java/'></g:plusone></div><div class='dd_button'><script src="http://connect.facebook.net/en_US/all.js#xfbml=1"></script><fb:like href="http%3A%2F%2Flineadecodigo.com%2Fjava%2Fcalcular-el-numero-feliz-con-java%2F" send="false" show_faces="false"  layout="button_count" width="92"  ></fb:like></div><div class='dd_button'><a href="http://twitter.com/share" class="twitter-share-button" data-url="http://lineadecodigo.com/java/calcular-el-numero-feliz-con-java/" data-count="horizontal" data-text="Calcular el número feliz con Java" data-via="" ></a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div></div><div style='clear:both'></div></div><div style='clear:both'></div><p>Ayer hablábamos en <a href="https://www.facebook.com/groups/java.es/" title="Grupo de Facebook en Español">el grupo de Facebook sobre Java en Español</a> (¿¿Qué todavía no estás apuntado???) sobre <a href="https://www.facebook.com/groups/java.es/permalink/415979385092650/" title="Charla sobre cómo calcular un número feliz en Java">el cálculo de el número feliz con Java</a>. Pero, ¿qué es un número feliz? Si seguimos <a href="http://es.wikipedia.org/wiki/N%C3%BAmero_feliz" title="Descripción del número feliz por la wikipedia">la descripción de la wikipedia sobre el número feliz</a>, este es aquel que, de forma iterativa, en la suma de sus dígitos acaba resultando un 1.</p>
<p>Es decir, para el caso del número 7, que es un número feliz, la secuencia sería la siguiente:</p>
<p>7<sup>2</sup> = 49<br />
4<sup>2</sup> + 9<sup>2</sup> = 97<br />
9<sup>2</sup> + 7<sup>2</sup> = 130<br />
1<sup>2</sup> + 3<sup>2</sup> + 0<sup>2</sup> = 10<br />
1<sup>2</sup> + 0<sup>2</sup> = 1</p>
<p>Así que nos ponemos manos a la obra para resolver este planteamiento de el número feliz con <a href="http://www.manualweb.net/tutorial-java/" title="Manual de Java">Java</a>. </p>
<p>Lo primero que vemos es que hay que extraer los dígitos del número. Esto ya lo explicábamos en <a href="http://lineadecodigo.com/java/digitos-de-un-numero/" title="Dígitos de un número">el artículo Dígitos de un número con Java</a>. Así que es bueno que lo leas en detalle. Si bien, lo que hacemos es utilizar divisiones y el módulo del 10 (división y resto) para ir extrayendo los números del dígito.</p>
<pre class="java" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #993333;">int</span><span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#93;</span> digitosNumero<span style="color: #66cc66;">&#40;</span><span style="color: #993333;">int</span> iNumero<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#123;</span>
&nbsp;
  <span style="color: #808080; font-style: italic;">// Creamos un array del tamaño del número de dígitos del número</span>
  <a href="http://w3api.com/wiki/Java:String"><span style="color: #aaaadd; font-weight: bold;">String</span></a> x = <a href="http://w3api.com/wiki/Java:Integer"><span style="color: #aaaadd; font-weight: bold;">Integer</span></a>.<span style="color: #006600;">toString</span><span style="color: #66cc66;">&#40;</span>iNumero<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
  <span style="color: #993333;">int</span><span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#93;</span> iNumeros = <span style="color: #000000; font-weight: bold;">new</span> <span style="color: #993333;">int</span><span style="color: #66cc66;">&#91;</span>x.<span style="color: #006600;">length</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#93;</span><span style="color: #66cc66;">;</span>
&nbsp;
  <span style="color: #808080; font-style: italic;">// Método que devuelve los dígitos de un número</span>
  <span style="color: #993333;">int</span> iDigito = <span style="color: #cc66cc;">0</span><span style="color: #66cc66;">;</span>
  <span style="color: #b1b100;">while</span> <span style="color: #66cc66;">&#40;</span>iNumero<span style="color: #66cc66;">&gt;</span><span style="color: #cc66cc;">0</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#123;</span>
    iNumeros<span style="color: #66cc66;">&#91;</span>iDigito<span style="color: #66cc66;">&#93;</span> = iNumero<span style="color: #66cc66;">%</span>10<span style="color: #66cc66;">;</span>
    iNumero = iNumero/<span style="color: #cc66cc;">10</span><span style="color: #66cc66;">;</span>
    iDigito++<span style="color: #66cc66;">;</span>
  <span style="color: #66cc66;">&#125;</span>
&nbsp;
  <span style="color: #000000; font-weight: bold;">return</span> iNumeros<span style="color: #66cc66;">;</span>
&nbsp;
<span style="color: #66cc66;">&#125;</span></pre>
<p>Al final hemos construido un método que dado un entero nos devuelve un array con los dígitos de dicho número.</p>
<p>Lo siguiente será, por cada dígito del número hacer la suma de los cuadrados de los dígitos. Para calcular los cuadrados utilizamos el <a href="http://www.w3api.com/wiki/Java:Math.pow()" title="Método pow de la clase Math de Java">método .pow()</a> de la clase <a href="http://www.w3api.com/wiki/Java:Math" title="Clase Math de Java">Math</a>.</p>
<blockquote><p>Recuerda que la clase <a href="http://www.w3api.com/wiki/Java:Math" title="Clase Math de Java">Math</a> es estática y no hace falta instanciarla.</p></blockquote>
<p>El código de esta suma de dígitos al cuadrado sería:</p>
<pre class="java" style="font-family:monospace;"><span style="color: #993333;">int</span><span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#93;</span> iNumeros = digitosNumero<span style="color: #66cc66;">&#40;</span>iNumero<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
iSuma = <span style="color: #cc66cc;">0</span><span style="color: #66cc66;">;</span>
<span style="color: #b1b100;">for</span> <span style="color: #66cc66;">&#40;</span><span style="color: #993333;">int</span> x=<span style="color: #cc66cc;">0</span><span style="color: #66cc66;">;</span>x<span style="color: #66cc66;">&lt;</span>iNumeros.<span style="color: #006600;">length</span><span style="color: #66cc66;">;</span>x++<span style="color: #66cc66;">&#41;</span>
  iSuma += <a href="http://w3api.com/wiki/Java:Math"><span style="color: #aaaadd; font-weight: bold;">Math</span></a>.<span style="color: #006600;">pow</span><span style="color: #66cc66;">&#40;</span>iNumeros<span style="color: #66cc66;">&#91;</span>x<span style="color: #66cc66;">&#93;</span>,<span style="color: #cc66cc;">2</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span></pre>
<p>Ahora hay que validar si la suma es un uno o si no saldremos del bucle. En el caso de que no sea un uno volvemos a llamar a la función digitosNumero para que nos vuelva a "trocear" el nuevo número.</p>
<pre class="java" style="font-family:monospace;"><span style="color: #b1b100;">while</span> <span style="color: #66cc66;">&#40;</span>iSuma<span style="color: #66cc66;">!</span>=<span style="color: #cc66cc;">1</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#123;</span>
  iSuma = <span style="color: #cc66cc;">0</span><span style="color: #66cc66;">;</span>		
&nbsp;
  <span style="color: #b1b100;">for</span> <span style="color: #66cc66;">&#40;</span><span style="color: #993333;">int</span> x=<span style="color: #cc66cc;">0</span><span style="color: #66cc66;">;</span>x<span style="color: #66cc66;">&lt;</span>iNumeros.<span style="color: #006600;">length</span><span style="color: #66cc66;">;</span>x++<span style="color: #66cc66;">&#41;</span>
    iSuma += <a href="http://w3api.com/wiki/Java:Math"><span style="color: #aaaadd; font-weight: bold;">Math</span></a>.<span style="color: #006600;">pow</span><span style="color: #66cc66;">&#40;</span>iNumeros<span style="color: #66cc66;">&#91;</span>x<span style="color: #66cc66;">&#93;</span>,<span style="color: #cc66cc;">2</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>				
&nbsp;
  iNumeros = digitosNumero<span style="color: #66cc66;">&#40;</span>iSuma<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
<span style="color: #66cc66;">&#125;</span></pre>
<p>Con esto ya tendríamos nuestro código que calcule si un número es un número feliz con <a href="http://www.manualweb.net/tutorial-java/" title="Manual de Java">Java</a> terminado. Pero hay una cosa que se puede mejorar, y es que si el número no es feliz se mete en una secuencia infinita de calculos, ya que nunca encontrará el 1. Si bien, podemos cortar este bucle si se repite un número en la secuencia, ya que volverá a la misma secuencia.</p>
<p>Veamos el caso del número 2:</p>
<p>2<sup>2</sup> = 4<br />
4<sup>2</sup> = 16<br />
1<sup>2</sup> + 6<sup>2</sup> = 37<br />
3<sup>2</sup> + 7<sup>2</sup> = 58<br />
5<sup>2</sup> + 8<sup>2</sup> = 89<br />
8<sup>2</sup> + 9<sup>2</sup> = 145<br />
1<sup>2</sup> + 4<sup>2</sup> + 5<sup>2</sup> = 42<br />
4<sup>2</sup> + 2<sup>2</sup> = 20<br />
2<sup>2</sup> + 0<sup>2</sup> = 4</p>
<p>Al llegar al número 4 que ya estaba en la serie, todo se volverá a repetir de forma infinita. Es por ello que en este punto habría que cortar el cálculo.</p>
<p>Para implementar esto lo que hemos hecho es añadir un conjunto, es decir, un <a href="http://www.w3api.com/wiki/Java:Set" title="Clase Set de Java">Set</a> al programa, al cual vamos metiendo los números, siempre y cuando el número sumado no esté. Ya que si esta significará que la secuencia se vuelve a repetir y hay que salir del bucle.</p>
<p>Instanciamos el <a href="http://www.w3api.com/wiki/Java:Set" title="Clase Set de Java">Set</a> mediante una clase <a href="http://www.w3api.com/wiki/Java:HashSet" title="Clase HashSet de Java">HashSet</a>.</p>
<pre class="java" style="font-family:monospace;">Set<span style="color: #66cc66;">&lt;</span>Integer<span style="color: #66cc66;">&gt;</span> iCalculados = <span style="color: #000000; font-weight: bold;">new</span> HashSet<span style="color: #66cc66;">&lt;</span>Integer<span style="color: #66cc66;">&gt;</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span></pre>
<p>Y en mitad del bucle hacemos la comprobación o inserción en el conjunto. Para ello utilizamos los métodos <a href="http://www.w3api.com/wiki/Java:HashSet.contains()" title="Método contains de la clase HashSet de Java">.contains</a> y <a href="http://www.w3api.com/wiki/Java:HashSet.add()" title="Método add de la clase HashSet de Java">.add</a></p>
<pre class="java" style="font-family:monospace;"><span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span>iCalculados.<span style="color: #006600;">contains</span><span style="color: #66cc66;">&#40;</span><span style="color: #000000; font-weight: bold;">new</span> <a href="http://w3api.com/wiki/Java:Integer"><span style="color: #aaaadd; font-weight: bold;">Integer</span></a><span style="color: #66cc66;">&#40;</span>iSuma<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
  bRepetido = <span style="color: #000000; font-weight: bold;">true</span><span style="color: #66cc66;">;</span>
<span style="color: #b1b100;">else</span>
  iCalculados.<span style="color: #006600;">add</span><span style="color: #66cc66;">&#40;</span><span style="color: #000000; font-weight: bold;">new</span> <a href="http://w3api.com/wiki/Java:Integer"><span style="color: #aaaadd; font-weight: bold;">Integer</span></a><span style="color: #66cc66;">&#40;</span>iSuma<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span></pre>
<p>Vemos que aparece una variable bRepetido y es que esta será el flag que utilicemos para salirnos del bucle. Así que finalmente nuestro bucle de cálculo quedará de la siguiente forma:</p>
<pre class="java" style="font-family:monospace;"><span style="color: #b1b100;">while</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#40;</span>iSuma<span style="color: #66cc66;">!</span>=<span style="color: #cc66cc;">1</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&amp;&amp;</span> <span style="color: #66cc66;">!</span><span style="color: #66cc66;">&#40;</span>bRepetido<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#123;</span>
  iSuma = <span style="color: #cc66cc;">0</span><span style="color: #66cc66;">;</span>
  <span style="color: #b1b100;">for</span> <span style="color: #66cc66;">&#40;</span><span style="color: #993333;">int</span> x=<span style="color: #cc66cc;">0</span><span style="color: #66cc66;">;</span>x<span style="color: #66cc66;">&lt;</span>iNumeros.<span style="color: #006600;">length</span><span style="color: #66cc66;">;</span>x++<span style="color: #66cc66;">&#41;</span>
    iSuma += <a href="http://w3api.com/wiki/Java:Math"><span style="color: #aaaadd; font-weight: bold;">Math</span></a>.<span style="color: #006600;">pow</span><span style="color: #66cc66;">&#40;</span>iNumeros<span style="color: #66cc66;">&#91;</span>x<span style="color: #66cc66;">&#93;</span>,<span style="color: #cc66cc;">2</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
  iNumeros = digitosNumero<span style="color: #66cc66;">&#40;</span>iSuma<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
&nbsp;
  <span style="color: #808080; font-style: italic;">// Controlamos si ha salido un número repetido. Para no entrar en el bucle.</span>
  <span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span>iCalculados.<span style="color: #006600;">contains</span><span style="color: #66cc66;">&#40;</span><span style="color: #000000; font-weight: bold;">new</span> <a href="http://w3api.com/wiki/Java:Integer"><span style="color: #aaaadd; font-weight: bold;">Integer</span></a><span style="color: #66cc66;">&#40;</span>iSuma<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
    bRepetido = <span style="color: #000000; font-weight: bold;">true</span><span style="color: #66cc66;">;</span>
  <span style="color: #b1b100;">else</span>
    iCalculados.<span style="color: #006600;">add</span><span style="color: #66cc66;">&#40;</span><span style="color: #000000; font-weight: bold;">new</span> <a href="http://w3api.com/wiki/Java:Integer"><span style="color: #aaaadd; font-weight: bold;">Integer</span></a><span style="color: #66cc66;">&#40;</span>iSuma<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
 <span style="color: #66cc66;">&#125;</span></pre>
<p>Ya solo nos quedará imprimir si el número es un número feliz o no. Esto nos lo cuenta la variable bRepetido. <img src='http://img.aulambra.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':-D' class='wp-smiley' /> </p>
<pre class="java" style="font-family:monospace;"><span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span>bRepetido<span style="color: #66cc66;">&#41;</span>
  <a href="http://w3api.com/wiki/Java:System"><span style="color: #aaaadd; font-weight: bold;">System</span></a>.<span style="color: #006600;">out</span>.<span style="color: #006600;">println</span><span style="color: #66cc66;">&#40;</span>iNumero + <span style="color: #ff0000;">&quot; NO es un número feliz&quot;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
<span style="color: #b1b100;">else</span>
  <a href="http://w3api.com/wiki/Java:System"><span style="color: #aaaadd; font-weight: bold;">System</span></a>.<span style="color: #006600;">out</span>.<span style="color: #006600;">println</span><span style="color: #66cc66;">&#40;</span>iNumero + <span style="color: #ff0000;">&quot; SI es un número feliz&quot;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span></pre>
<p><strong>Similar Posts:</strong>
<ul class="similar-posts">
<li><a href="http://lineadecodigo.com/java/digitos-de-un-numero/" rel="bookmark" title="Mayo 18, 2011">Dígitos de un número</a></li>
<li><a href="http://lineadecodigo.com/java/validador-de-rut-en-java/" rel="bookmark" title="Diciembre 9, 2010">Validador de RUT en Java</a></li>
<li><a href="http://lineadecodigo.com/javascript/validar-un-cif-en-javascript/" rel="bookmark" title="Mayo 26, 2010">Validar un CIF en Javascript</a></li>
<li><a href="http://lineadecodigo.com/java/ultimo-digito-de-un-numero-con-java/" rel="bookmark" title="Enero 11, 2009">Último dígito de un número con Java</a></li>
<li><a href="http://lineadecodigo.com/java/mayor-de-dos-numeros/" rel="bookmark" title="Mayo 30, 2011">Mayor de dos números</a></li>
</ul>
<p><!-- Similar Posts took 5.075 ms --></p>
<script type="text/javascript"> jQuery(document).ready(function($) { window.setTimeout('loadGoogle1_4160()',1000); }); </script><script type="text/javascript"> function loadGoogle1_4160(){ jQuery(document).ready(function($) { $('.dd-google1-4160').remove();$.getScript('https://apis.google.com/js/plusone.js'); }); }</script><!-- Social Buttons Generated by Digg Digg plugin v5.2.6,
    Author : Buffer, Inc
    Website : http://bufferapp.com/diggdigg -->]]></content:encoded>
			<wfw:commentRss>http://lineadecodigo.com/java/calcular-el-numero-feliz-con-java/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Listar ficheros ocultos de un directorio con Java</title>
		<link>http://lineadecodigo.com/java/listar-ficheros-ocultos-de-un-directorio-con-java/</link>
		<comments>http://lineadecodigo.com/java/listar-ficheros-ocultos-de-un-directorio-con-java/#comments</comments>
		<pubDate>Fri, 04 May 2012 21:59:26 +0000</pubDate>
		<dc:creator>Víctor Cuervo</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[ficheros]]></category>
		<category><![CDATA[File]]></category>
		<category><![CDATA[isHidden]]></category>
		<category><![CDATA[listar]]></category>
		<category><![CDATA[oculto]]></category>

		<guid isPermaLink="false">http://lineadecodigo.com/?p=4155</guid>
		<description><![CDATA[Estaba haciendo unas pruebas con ficheros y no había caído en que el directorio con el que estaba trabajando tenía algunos ficheros ocultos que no estaba moviendo.cY me he dicho, porqué no escribir unas pequeñas líneas de código con Java para listar los ficheros ocultos de un directorio. Y es que el programa es muy sencillo. Te [...]]]></description>
			<content:encoded><![CDATA[<div class='dd_post_share'><div class='dd_buttons'><div class='dd_button'><div class='dd-google1-ajax-load dd-google1-4155'></div><g:plusone size='medium' href='http://lineadecodigo.com/java/listar-ficheros-ocultos-de-un-directorio-con-java/'></g:plusone></div><div class='dd_button'><script src="http://connect.facebook.net/en_US/all.js#xfbml=1"></script><fb:like href="http%3A%2F%2Flineadecodigo.com%2Fjava%2Flistar-ficheros-ocultos-de-un-directorio-con-java%2F" send="false" show_faces="false"  layout="button_count" width="92"  ></fb:like></div><div class='dd_button'><a href="http://twitter.com/share" class="twitter-share-button" data-url="http://lineadecodigo.com/java/listar-ficheros-ocultos-de-un-directorio-con-java/" data-count="horizontal" data-text="Listar ficheros ocultos de un directorio con Java" data-via="" ></a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div></div><div style='clear:both'></div></div><div style='clear:both'></div><p>Estaba haciendo unas pruebas con ficheros y no había caído en que el directorio con el que estaba trabajando tenía algunos ficheros ocultos que no estaba moviendo.cY me he dicho, porqué no escribir unas pequeñas líneas de código con Java para listar los ficheros ocultos de un directorio. Y es que el programa es muy sencillo.</p>
<p>Te recomiendo que empieces echando un ojo al <a href="http://lineadecodigo.com/java/listar-un-directorio-con-java/" title="Listar ficheros con Java">artículo que explica como listar los ficheros de un directorio con Java</a>. Ya que la base del listado de ficheros está en ese ejemplo.</p>
<p>Lo siguiente será saber que el método que nos dice si un fichero es oculto o no es <a href="http://www.w3api.com/wiki/Java:File.isHidden()" title="Método isHidden del objeto File de Java">.isHidden()</a>. Algo que, por otro lado, cabía esperar. Así que listemos los ficheros del directorio.</p>
<pre class="java" style="font-family:monospace;"><a href="http://w3api.com/wiki/Java:String"><span style="color: #aaaadd; font-weight: bold;">String</span></a> sDirectorio = <span style="color: #ff0000;">&quot;d:<span style="color: #000099; font-weight: bold;">\\</span>test&quot;</span><span style="color: #66cc66;">;</span>
<a href="http://w3api.com/wiki/Java:File"><span style="color: #aaaadd; font-weight: bold;">File</span></a> f = <span style="color: #000000; font-weight: bold;">new</span> <a href="http://w3api.com/wiki/Java:File"><span style="color: #aaaadd; font-weight: bold;">File</span></a><span style="color: #66cc66;">&#40;</span>sDirectorio<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
&nbsp;
<span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span>f.<span style="color: #006600;">exists</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#123;</span>
	<a href="http://w3api.com/wiki/Java:File"><span style="color: #aaaadd; font-weight: bold;">File</span></a><span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#93;</span> ficheros = f.<span style="color: #006600;">listFiles</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
	<span style="color: #b1b100;">for</span> <span style="color: #66cc66;">&#40;</span><span style="color: #993333;">int</span> x=<span style="color: #cc66cc;">0</span><span style="color: #66cc66;">;</span>x<span style="color: #66cc66;">&lt;</span>ficheros.<span style="color: #006600;">length</span><span style="color: #66cc66;">;</span>x++<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#123;</span>
		<a href="http://w3api.com/wiki/Java:System"><span style="color: #aaaadd; font-weight: bold;">System</span></a>.<span style="color: #006600;">out</span>.<span style="color: #006600;">println</span><span style="color: #66cc66;">&#40;</span>ficheros<span style="color: #66cc66;">&#91;</span>x<span style="color: #66cc66;">&#93;</span>.<span style="color: #006600;">getName</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
	<span style="color: #66cc66;">&#125;</span>
<span style="color: #66cc66;">&#125;</span> <span style="color: #b1b100;">else</span><span style="color: #66cc66;">&#123;</span>
	<a href="http://w3api.com/wiki/Java:System"><span style="color: #aaaadd; font-weight: bold;">System</span></a>.<span style="color: #006600;">out</span>.<span style="color: #006600;">println</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;No existe ese directorio&quot;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
<span style="color: #66cc66;">&#125;</span></pre>
<p>Con este código hemos listado todos los ficheros. Si queremos listar los ocultos añadimos el método <a href="http://www.w3api.com/wiki/Java:File.isHidden()" title="Método isHidden del objeto File de Java">.isHidden()</a> sobre el objeto <a href="http://www.w3api.com/wiki/Java:File" title="Objeto File de Java">File</a> sobre el que estamos iterando.</p>
<pre class="java" style="font-family:monospace;"><span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span>f.<span style="color: #006600;">exists</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#123;</span>
	<a href="http://w3api.com/wiki/Java:File"><span style="color: #aaaadd; font-weight: bold;">File</span></a><span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#93;</span> ficheros = f.<span style="color: #006600;">listFiles</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
	<span style="color: #b1b100;">for</span> <span style="color: #66cc66;">&#40;</span><span style="color: #993333;">int</span> x=<span style="color: #cc66cc;">0</span><span style="color: #66cc66;">;</span>x<span style="color: #66cc66;">&lt;</span>ficheros.<span style="color: #006600;">length</span><span style="color: #66cc66;">;</span>x++<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#123;</span>
		<span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span>ficheros<span style="color: #66cc66;">&#91;</span>x<span style="color: #66cc66;">&#93;</span>.<span style="color: #006600;">isHidden</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
			<a href="http://w3api.com/wiki/Java:System"><span style="color: #aaaadd; font-weight: bold;">System</span></a>.<span style="color: #006600;">out</span>.<span style="color: #006600;">println</span><span style="color: #66cc66;">&#40;</span>ficheros<span style="color: #66cc66;">&#91;</span>x<span style="color: #66cc66;">&#93;</span>.<span style="color: #006600;">getName</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
	<span style="color: #66cc66;">&#125;</span>
<span style="color: #66cc66;">&#125;</span> <span style="color: #b1b100;">else</span><span style="color: #66cc66;">&#123;</span>
	<a href="http://w3api.com/wiki/Java:System"><span style="color: #aaaadd; font-weight: bold;">System</span></a>.<span style="color: #006600;">out</span>.<span style="color: #006600;">println</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;No existe ese directorio&quot;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
<span style="color: #66cc66;">&#125;</span></pre>
<p>Algo muy sencillo y útil para no dejarnos o encontrar esos ficheros ocultos.</p>
<p>En los siguientes artículos intentaremos hablar de todas las novedades que trae Java SE 7 sobre la gestión de ficheros.<strong>Similar Posts:</strong>
<ul class="similar-posts">
<li><a href="http://lineadecodigo.com/java/listar-un-directorio-con-java/" rel="bookmark" title="Diciembre 26, 2008">Listar un directorio con Java</a></li>
<li><a href="http://lineadecodigo.com/java/borrar-un-directorio-con-java/" rel="bookmark" title="Diciembre 28, 2008">Borrar un directorio con Java</a></li>
<li><a href="http://lineadecodigo.com/java/obtener-directorio-padre-de-un-fichero/" rel="bookmark" title="Enero 20, 2012">Obtener directorio padre de un fichero</a></li>
<li><a href="http://lineadecodigo.com/java/listar-un-directorio-de-forma-recursiva-en-java/" rel="bookmark" title="Diciembre 27, 2008">Listar un directorio de forma recursiva en Java</a></li>
<li><a href="http://lineadecodigo.com/java/copiar-directorio-con-java/" rel="bookmark" title="Septiembre 13, 2011">Copiar directorio con Java</a></li>
</ul>
<p><!-- Similar Posts took 8.590 ms --></p>
<script type="text/javascript"> jQuery(document).ready(function($) { window.setTimeout('loadGoogle1_4155()',1000); }); </script><script type="text/javascript"> function loadGoogle1_4155(){ jQuery(document).ready(function($) { $('.dd-google1-4155').remove();$.getScript('https://apis.google.com/js/plusone.js'); }); }</script><!-- Social Buttons Generated by Digg Digg plugin v5.2.6,
    Author : Buffer, Inc
    Website : http://bufferapp.com/diggdigg -->]]></content:encoded>
			<wfw:commentRss>http://lineadecodigo.com/java/listar-ficheros-ocultos-de-un-directorio-con-java/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Usando las clases HashSet y HashMap</title>
		<link>http://lineadecodigo.com/java/usando-las-clases-hashset-y-hashmap/</link>
		<comments>http://lineadecodigo.com/java/usando-las-clases-hashset-y-hashmap/#comments</comments>
		<pubDate>Wed, 11 Apr 2012 06:00:58 +0000</pubDate>
		<dc:creator>Emmanuel Ramos</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[add]]></category>
		<category><![CDATA[equals]]></category>
		<category><![CDATA[hashCode]]></category>
		<category><![CDATA[HashMap]]></category>
		<category><![CDATA[HashSet]]></category>
		<category><![CDATA[keySet]]></category>
		<category><![CDATA[OBJECT]]></category>
		<category><![CDATA[put]]></category>
		<category><![CDATA[size]]></category>

		<guid isPermaLink="false">http://lineadecodigo.com/?p=4044</guid>
		<description><![CDATA[Antes de iniciar a explicar el codigo, tengo que señalar que tanto la clase HashSet como la clase HashMap tienen una ventaja la cual es, que los valores que se van insertando en la coleccion internamente no tendran un orden especifico, esto se debe a que estas clases realizan un ordenamiento interno mediante el hashcode de [...]]]></description>
			<content:encoded><![CDATA[<div class='dd_post_share'><div class='dd_buttons'><div class='dd_button'><div class='dd-google1-ajax-load dd-google1-4044'></div><g:plusone size='medium' href='http://lineadecodigo.com/java/usando-las-clases-hashset-y-hashmap/'></g:plusone></div><div class='dd_button'><script src="http://connect.facebook.net/en_US/all.js#xfbml=1"></script><fb:like href="http%3A%2F%2Flineadecodigo.com%2Fjava%2Fusando-las-clases-hashset-y-hashmap%2F" send="false" show_faces="false"  layout="button_count" width="92"  ></fb:like></div><div class='dd_button'><a href="http://twitter.com/share" class="twitter-share-button" data-url="http://lineadecodigo.com/java/usando-las-clases-hashset-y-hashmap/" data-count="horizontal" data-text="Usando las clases HashSet y HashMap" data-via="" ></a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div></div><div style='clear:both'></div></div><div style='clear:both'></div><p>Antes de iniciar a explicar el codigo, tengo que señalar que tanto la clase <a href="http://www.w3api.com/wiki/Java:HashSet" title="Clase HashSet de Java">HashSet</a> como la clase <a href="http://www.w3api.com/wiki/Java:HashMap" title="Clase HashMap de Java">HashMap</a> tienen una ventaja la cual es, que los valores que se van insertando en la coleccion internamente no tendran un orden especifico, esto se debe a que <strong>estas clases realizan un ordenamiento interno mediante el hashcode de el elemento(Objeto), por lo cual no sabremos que elemento traerá.</strong></p>
<p>Esto nos da una ventaja para nosotros que es poder <strong>sobrescribir el metodo <a href="http://www.w3api.com/wiki/Java:Object.hashCode()" title="Método hashCode de los objetos Java">.hashCode()</a> y <a href="http://www.w3api.com/wiki/Java:Object.equals()" title="Método equals de los objetos Java">.equals()</a> para asi, si tenemos un objeto que tienen sus mismas caracteristicas y mismo hashcode no se agregue a la colección </strong>, una de las principales ventajas de este metodo es la rapidez en la insercion de los elemento si tenemos cientos de elementosque agregar, esta coleccion es la indicada para este trabajo.</p>
<p>El algoritmo de busqueda de un elemento en la colecion es el siguiente</p>
<ol>
<li>Encuentra el elemento (Objeto) mediante el hashcode. Imagínense varios personas en un salon con la misma edad.</li>
<li>Ya que encontro el elemento mediante el hashcode se realiza la comparacion si el objeto es igual mediante el método <a href="http://www.w3api.com/wiki/Java:Object.equals()" title="Método equals de los objetos Java">.equals()</a>. Imaginen que en ese mismo salon se esta buscando a una persona con un nombre y apellido especifico.</li>
</ol>
<p>Lo primero será definir un objeto de tipo Alumnos.</p>
<pre class="java" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">class</span> Alumnos <span style="color: #66cc66;">&#123;</span>
    <span style="color: #000000; font-weight: bold;">private</span> <span style="color: #993333;">int</span> age<span style="color: #66cc66;">;</span>
    <span style="color: #000000; font-weight: bold;">private</span> <a href="http://w3api.com/wiki/Java:String"><span style="color: #aaaadd; font-weight: bold;">String</span></a> name<span style="color: #66cc66;">;</span>
&nbsp;
    Alumnos<span style="color: #66cc66;">&#40;</span><a href="http://w3api.com/wiki/Java:String"><span style="color: #aaaadd; font-weight: bold;">String</span></a> name, <span style="color: #993333;">int</span> age<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#123;</span>
    	<span style="color: #000000; font-weight: bold;">this</span>.<span style="color: #006600;">name</span> = name<span style="color: #66cc66;">;</span>
    	<span style="color: #000000; font-weight: bold;">this</span>.<span style="color: #006600;">age</span> = age<span style="color: #66cc66;">;</span>
    <span style="color: #66cc66;">&#125;</span>
<span style="color: #66cc66;">&#125;</span></pre>
<p>Las variables age y name serán las necesarias para que se comparen los objetos y su hashcode.</p>
<p>Lo siguiente que haremos será insertar los objetos Alumnos en un <a href="http://www.w3api.com/wiki/Java:HashSet" title="Clase HashSet de Java">HashSet</a>.</p>
<pre class="java" style="font-family:monospace;">Alumnos person1 = <span style="color: #000000; font-weight: bold;">new</span> Alumnos<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;Juan&quot;</span>,<span style="color: #cc66cc;">18</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
Alumnos person2 = <span style="color: #000000; font-weight: bold;">new</span> Alumnos<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;Miguel&quot;</span>,<span style="color: #cc66cc;">25</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
Alumnos person3 = <span style="color: #000000; font-weight: bold;">new</span> Alumnos<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;Luis&quot;</span>,<span style="color: #cc66cc;">18</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
Alumnos person4 = <span style="color: #000000; font-weight: bold;">new</span> Alumnos<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;Luis&quot;</span>,<span style="color: #cc66cc;">18</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
&nbsp;
HashSet<span style="color: #66cc66;">&lt;</span>Alumnos<span style="color: #66cc66;">&gt;</span> personas = <span style="color: #000000; font-weight: bold;">new</span> HashSet<span style="color: #66cc66;">&lt;</span>Alumnos<span style="color: #66cc66;">&gt;</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
personas.<span style="color: #006600;">add</span><span style="color: #66cc66;">&#40;</span>person1<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
personas.<span style="color: #006600;">add</span><span style="color: #66cc66;">&#40;</span>person2<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
personas.<span style="color: #006600;">add</span><span style="color: #66cc66;">&#40;</span>person3<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
personas.<span style="color: #006600;">add</span><span style="color: #66cc66;">&#40;</span>person4<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span></pre>
<p>Si verificamos el tamaño del <a href="http://www.w3api.com/wiki/Java:HashSet" title="Clase HashSet de Java">HashSet</a> alumnos veremos que nos devuelve "4", ya que por defecto el <a href="http://www.w3api.com/wiki/Java:HashSet" title="Clase HashSet de Java">HashSet</a> no realiza ninguna comparación.</p>
<pre class="java" style="font-family:monospace;"><a href="http://w3api.com/wiki/Java:System"><span style="color: #aaaadd; font-weight: bold;">System</span></a>.<span style="color: #006600;">out</span>.<span style="color: #006600;">println</span><span style="color: #66cc66;">&#40;</span>personas.<span style="color: #006600;">size</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span></pre>
<p>Ahora agregamos 4 objetos alumno a un <a href="http://www.w3api.com/wiki/Java:HashMap" title="Clase HashMap de Java">HashMap</a>.</p>
<pre class="java" style="font-family:monospace;">Map<span style="color: #66cc66;">&lt;</span>Alumnos,String<span style="color: #66cc66;">&gt;</span> m = <span style="color: #000000; font-weight: bold;">new</span> HashMap<span style="color: #66cc66;">&lt;</span>Alumnos,String<span style="color: #66cc66;">&gt;</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
&nbsp;
m.<span style="color: #006600;">put</span><span style="color: #66cc66;">&#40;</span>person1, <span style="color: #ff0000;">&quot;valor1&quot;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
m.<span style="color: #006600;">put</span><span style="color: #66cc66;">&#40;</span>person2, <span style="color: #ff0000;">&quot;valor2&quot;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
m.<span style="color: #006600;">put</span><span style="color: #66cc66;">&#40;</span>person3, <span style="color: #ff0000;">&quot;valor1&quot;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
m.<span style="color: #006600;">put</span><span style="color: #66cc66;">&#40;</span>person4, <span style="color: #ff0000;">&quot;mi valor&quot;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span></pre>
<p>El método <a href="http://www.w3api.com/wiki/Java:HashMap.size()" title="Método .size() del HashMap">.size()</a> nos devolvera un tamaño de "4" ya que el <a href="http://www.w3api.com/wiki/Java:HashMap" title="Clase HashMap de Java">HashMap</a> tampoco realiza ninguna comparación. De igual manerá el método <a href="http://www.w3api.com/wiki/Java:HashMap.keySet()" title="Método keySet de la clase HashMap de Java">.keySet()</a> devuelve todos los elementos del <a href="http://www.w3api.com/wiki/Java:HashMap" title="Clase HashMap de Java">HashMap</a>.</p>
<pre class="java" style="font-family:monospace;"><a href="http://w3api.com/wiki/Java:System"><span style="color: #aaaadd; font-weight: bold;">System</span></a>.<span style="color: #006600;">out</span>.<span style="color: #006600;">println</span><span style="color: #66cc66;">&#40;</span>m.<span style="color: #006600;">keySet</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
<a href="http://w3api.com/wiki/Java:System"><span style="color: #aaaadd; font-weight: bold;">System</span></a>.<span style="color: #006600;">out</span>.<span style="color: #006600;">println</span><span style="color: #66cc66;">&#40;</span>m.<span style="color: #006600;">size</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span></pre>
<p>Ahora vamos a cambiar el comportamiento de la clase Alumnos para que al insertarlo en un <a href="http://www.w3api.com/wiki/Java:HashMap" title="Clase HashMap de Java">HashMap</a> o en un <a href="http://www.w3api.com/wiki/Java:HashSet" title="Clase HashSet de Java">HashSet</a> se valide si el elemento insertado ya existe.</p>
<p>Sobrescribimos el método <a href="http://www.w3api.com/wiki/Java:Object.equals()" title="Método equals de los objetos Java">.equals()</a> de tal manera que dos objetos Alumno serán iguales si coinciden sus nombres.</p>
<pre class="java" style="font-family:monospace;">@Override
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #993333;">boolean</span> equals<span style="color: #66cc66;">&#40;</span><a href="http://w3api.com/wiki/Java:Object"><span style="color: #aaaadd; font-weight: bold;">Object</span></a> o<span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span>
  <span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span>o <span style="color: #000000; font-weight: bold;">instanceof</span> Alumnos<span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span>
    Alumnos p = <span style="color: #66cc66;">&#40;</span>Alumnos<span style="color: #66cc66;">&#41;</span>o<span style="color: #66cc66;">;</span>
    <span style="color: #000000; font-weight: bold;">return</span> <span style="color: #000000; font-weight: bold;">this</span>.<span style="color: #006600;">name</span>.<span style="color: #006600;">equals</span><span style="color: #66cc66;">&#40;</span>p.<span style="color: #006600;">name</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
  <span style="color: #66cc66;">&#125;</span> <span style="color: #b1b100;">else</span> <span style="color: #66cc66;">&#123;</span>
    <span style="color: #000000; font-weight: bold;">return</span> <span style="color: #000000; font-weight: bold;">false</span><span style="color: #66cc66;">;</span>
  <span style="color: #66cc66;">&#125;</span>
<span style="color: #66cc66;">&#125;</span></pre>
<p>De igual manera sobrescribimos el método <a href="http://www.w3api.com/wiki/Java:Object.hashCode()" title="Método hashCode de los objetos Java">.hashCode()</a>. Para generar el hascode utilizamos la variable edad y la longitud del String, consiguiendo así un entero.</p>
<pre class="java" style="font-family:monospace;">@Override
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #993333;">int</span> hashCode<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span>
  <span style="color: #000000; font-weight: bold;">return</span> age <span style="color: #66cc66;">*</span> <span style="color: #000000; font-weight: bold;">this</span>.<span style="color: #006600;">name</span>.<span style="color: #006600;">length</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
<span style="color: #66cc66;">&#125;</span></pre>
<p>Ahora, una vez sobrescritos los métodos <a href="http://www.w3api.com/wiki/Java:Object.hashCode()" title="Método hashCode de los objetos Java">.hashCode()</a> y <a href="http://www.w3api.com/wiki/Java:Object.equals()" title="Método equals de los objetos Java">.equals()</a>, si verificamos el tamaño del <a href="http://www.w3api.com/wiki/Java:HashSet" title="Clase HashSet de Java">HashSet</a> alumnos veremos que nos devuelve "3" ya que, si hay un elemento igual, el metodo .<a href="http://www.w3api.com/wiki/Java:HashSet.add()" title="Método add de la clase HashSet">add()</a> devolvera false.</p>
<pre class="java" style="font-family:monospace;">Map<span style="color: #66cc66;">&lt;</span>Alumnos,String<span style="color: #66cc66;">&gt;</span> m = <span style="color: #000000; font-weight: bold;">new</span> HashMap<span style="color: #66cc66;">&lt;</span>Alumnos,String<span style="color: #66cc66;">&gt;</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span></pre>
<p>De igual manera el método <a href="http://www.w3api.com/wiki/Java:HashMap.size()" title="Método size de la clase HashMap de Java">.size()</a> sobre el <a href="http://www.w3api.com/wiki/Java:HashMap" title="Clase HashMap de Java">HashMap</a nos devolverá "3" y el método a href="http://www.w3api.com/wiki/Java:HashMap.keySet()" title="Método keySet de la clase HashMap de Java">.keySet()</a> los nombres de 3 alumnos ya que el método <a href="http://www.w3api.com/wiki/Java:HashMap.put()" title="Método put de la clase HashMap de Java">.put()</a> habrá devuelto false al insertar objetos iguales.</p>
<pre class="java" style="font-family:monospace;"><a href="http://w3api.com/wiki/Java:System"><span style="color: #aaaadd; font-weight: bold;">System</span></a>.<span style="color: #006600;">out</span>.<span style="color: #006600;">println</span><span style="color: #66cc66;">&#40;</span>m.<span style="color: #006600;">keySet</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
<a href="http://w3api.com/wiki/Java:System"><span style="color: #aaaadd; font-weight: bold;">System</span></a>.<span style="color: #006600;">out</span>.<span style="color: #006600;">println</span><span style="color: #66cc66;">&#40;</span>m.<span style="color: #006600;">size</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span></pre>
<p>Una cosa que hay que tener en cuenta es que si se sobreescribe solo uno de sus metodos ya sea <a href="http://www.w3api.com/wiki/Java:Object.hashCode()" title="Método hashCode de los objetos Java">.hashCode()</a> o <a href="http://www.w3api.com/wiki/Java:Object.equals()" title="Método equals de los objetos Java">.equals()</a> no tendremos el comportamiento deseado. Hay que sobrescribir los dos.<strong>Similar Posts:</strong>
<ul class="similar-posts">
<li><a href="http://lineadecodigo.com/java/numero-de-ocurrencias-en-un-array/" rel="bookmark" title="Marzo 30, 2011">Número de ocurrencias en un array</a></li>
<li><a href="http://lineadecodigo.com/java/calcular-la-moda-de-una-distribucion-con-java/" rel="bookmark" title="Noviembre 9, 2010">Calcular la moda de una distribución con Java</a></li>
<li><a href="http://lineadecodigo.com/java/maximo-y-minimo-numero-de-un-conjunto/" rel="bookmark" title="Junio 26, 2007">Máximo y mínimo número de un conjunto</a></li>
<li><a href="http://lineadecodigo.com/java/elemento-maximo-y-minimo-de-un-conjunto-con-objetos/" rel="bookmark" title="Julio 8, 2007">Elemento maximo y minimo de un conjunto con Objetos</a></li>
<li><a href="http://lineadecodigo.com/java/listar-un-conjunto/" rel="bookmark" title="Agosto 3, 2007">Listar un conjunto</a></li>
</ul>
<p><!-- Similar Posts took 5.196 ms --></p>
<script type="text/javascript"> jQuery(document).ready(function($) { window.setTimeout('loadGoogle1_4044()',1000); }); </script><script type="text/javascript"> function loadGoogle1_4044(){ jQuery(document).ready(function($) { $('.dd-google1-4044').remove();$.getScript('https://apis.google.com/js/plusone.js'); }); }</script><!-- Social Buttons Generated by Digg Digg plugin v5.2.6,
    Author : Buffer, Inc
    Website : http://bufferapp.com/diggdigg -->]]></content:encoded>
			<wfw:commentRss>http://lineadecodigo.com/java/usando-las-clases-hashset-y-hashmap/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Como ejecutar un comando del sistema desde Java</title>
		<link>http://lineadecodigo.com/java/como-ejecutar-un-comando-del-sistema-desde-java/</link>
		<comments>http://lineadecodigo.com/java/como-ejecutar-un-comando-del-sistema-desde-java/#comments</comments>
		<pubDate>Mon, 09 Apr 2012 06:00:28 +0000</pubDate>
		<dc:creator>Feffo</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[comando]]></category>
		<category><![CDATA[consola]]></category>
		<category><![CDATA[ejecutar]]></category>
		<category><![CDATA[exec]]></category>
		<category><![CDATA[InputStream]]></category>
		<category><![CDATA[Process]]></category>
		<category><![CDATA[Runtime]]></category>

		<guid isPermaLink="false">http://lineadecodigo.com/?p=3974</guid>
		<description><![CDATA[Hoy les traigo una forma de poder ejecutar un comando de consola en Java. La clave para ejecutar un comando en Java esta en los métodos exec(String command) y exec(String[] cmdarray). La diferencia entre estos dos métodos Java es que el primero esta destinado a ejecutar comandos sin argumentos: try &#123; String cmd = &#34;halt&#34;; [...]]]></description>
			<content:encoded><![CDATA[<div class='dd_post_share'><div class='dd_buttons'><div class='dd_button'><div class='dd-google1-ajax-load dd-google1-3974'></div><g:plusone size='medium' href='http://lineadecodigo.com/java/como-ejecutar-un-comando-del-sistema-desde-java/'></g:plusone></div><div class='dd_button'><script src="http://connect.facebook.net/en_US/all.js#xfbml=1"></script><fb:like href="http%3A%2F%2Flineadecodigo.com%2Fjava%2Fcomo-ejecutar-un-comando-del-sistema-desde-java%2F" send="false" show_faces="false"  layout="button_count" width="92"  ></fb:like></div><div class='dd_button'><a href="http://twitter.com/share" class="twitter-share-button" data-url="http://lineadecodigo.com/java/como-ejecutar-un-comando-del-sistema-desde-java/" data-count="horizontal" data-text="Como ejecutar un comando del sistema desde Java" data-via="" ></a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div></div><div style='clear:both'></div></div><div style='clear:both'></div><p>Hoy les traigo una forma de poder ejecutar un comando de consola en <a href="http://www.manualweb.net/tutorial-java/" title="Manual de Java">Java</a>. La clave para ejecutar un comando en <a href="http://www.manualweb.net/tutorial-java/" title="Manual de Java">Java</a> esta en los métodos <a href="http://www.w3api.com/wiki/Java:Runtime.exec()">exec(String command)</a> y <a href="http://www.w3api.com/wiki/Java:Runtime.exec()">exec(String[] cmdarray)</a>.</p>
<p>La diferencia entre estos dos métodos <a href="http://www.manualweb.net/tutorial-java/" title="Manual de Java">Java</a> es que el primero esta destinado a ejecutar comandos sin argumentos:</p>
<pre class="java" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">try</span> <span style="color: #66cc66;">&#123;</span>
	<a href="http://w3api.com/wiki/Java:String"><span style="color: #aaaadd; font-weight: bold;">String</span></a> cmd = <span style="color: #ff0000;">&quot;halt&quot;</span><span style="color: #66cc66;">;</span> <span style="color: #808080; font-style: italic;">//Comando de apagado en linux</span>
	<a href="http://w3api.com/wiki/Java:Runtime"><span style="color: #aaaadd; font-weight: bold;">Runtime</span></a>.<span style="color: #006600;">getRuntime</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>.<span style="color: #006600;">exec</span><span style="color: #66cc66;">&#40;</span>cmd<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
<span style="color: #66cc66;">&#125;</span> <span style="color: #000000; font-weight: bold;">catch</span> <span style="color: #66cc66;">&#40;</span><a href="http://w3api.com/wiki/Java:IOException"><span style="color: #aaaadd; font-weight: bold;">IOException</span></a> ioe<span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span>
	<a href="http://w3api.com/wiki/Java:System"><span style="color: #aaaadd; font-weight: bold;">System</span></a>.<span style="color: #006600;">out</span>.<span style="color: #006600;">println</span> <span style="color: #66cc66;">&#40;</span>ioe<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
<span style="color: #66cc66;">&#125;</span></pre>
<p>Y el segundo si, solo que deben poner cada 'palabra' en un índice distinto en el arreglo <a href="http://www.manualweb.net/tutorial-java/" title="Manual de Java">Java</a>:</p>
<pre class="java" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">try</span> <span style="color: #66cc66;">&#123;</span>
	<a href="http://w3api.com/wiki/Java:String"><span style="color: #aaaadd; font-weight: bold;">String</span></a> <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#93;</span> cmd = <span style="color: #66cc66;">&#123;</span><span style="color: #ff0000;">&quot;shutdown&quot;</span>,<span style="color: #ff0000;">&quot;-s&quot;</span>,<span style="color: #ff0000;">&quot;-t&quot;</span>, <span style="color: #ff0000;">&quot;10&quot;</span><span style="color: #66cc66;">&#125;</span><span style="color: #66cc66;">;</span> <span style="color: #808080; font-style: italic;">//Comando de apagado en windows</span>
	<a href="http://w3api.com/wiki/Java:Runtime"><span style="color: #aaaadd; font-weight: bold;">Runtime</span></a>.<span style="color: #006600;">getRuntime</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>.<span style="color: #006600;">exec</span><span style="color: #66cc66;">&#40;</span>cmd<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
<span style="color: #66cc66;">&#125;</span> <span style="color: #000000; font-weight: bold;">catch</span> <span style="color: #66cc66;">&#40;</span><a href="http://w3api.com/wiki/Java:IOException"><span style="color: #aaaadd; font-weight: bold;">IOException</span></a> ioe<span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span>
	<a href="http://w3api.com/wiki/Java:System"><span style="color: #aaaadd; font-weight: bold;">System</span></a>.<span style="color: #006600;">out</span>.<span style="color: #006600;">println</span> <span style="color: #66cc66;">&#40;</span>ioe<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
<span style="color: #66cc66;">&#125;</span></pre>
<blockquote><p>Recordar que el comando se va a ejecutar en un proceso <a href="http://www.manualweb.net/tutorial-java/" title="Manual de Java">Java</a> aparte.</p></blockquote>
<p>Otra cosa a tener en cuenta es el retorno que brindan estos métodos. Para ello tenemos el objeto de tipo <a href="http://www.w3api.com/wiki/Java:Process">Process</a>.</p>
<p>La clase <a href="http://www.w3api.com/wiki/Java:Process">Process</a> posee algunos métodos interesantes, en especial el metodo <a href="http://www.w3api.com/wiki/Java:Process.getInputStream()">public abstract InputStream getInputStream()</a>, ya que con él podemos obtener un Stream para poder leer lo que el comando que ejecutamos escribío en la consola.</p>
<pre class="java" style="font-family:monospace;"><a href="http://w3api.com/wiki/Java:Process"><span style="color: #aaaadd; font-weight: bold;">Process</span></a> process = <a href="http://w3api.com/wiki/Java:Runtime"><span style="color: #aaaadd; font-weight: bold;">Runtime</span></a>.<span style="color: #006600;">getRuntime</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>.<span style="color: #006600;">exec</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;lsb_release -a&quot;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
<a href="http://w3api.com/wiki/Java:InputStream"><span style="color: #aaaadd; font-weight: bold;">InputStream</span></a> inputstream = process.<span style="color: #006600;">getInputStream</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
<a href="http://w3api.com/wiki/Java:BufferedInputStream"><span style="color: #aaaadd; font-weight: bold;">BufferedInputStream</span></a> bufferedinputstream = <span style="color: #000000; font-weight: bold;">new</span> <a href="http://w3api.com/wiki/Java:BufferedInputStream"><span style="color: #aaaadd; font-weight: bold;">BufferedInputStream</span></a><span style="color: #66cc66;">&#40;</span>inputstream<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span></pre>
<p>En mi caso, obtuve el siguiente texto al leer las lineas del buffer.</p>
<pre>Distributor ID:	Ubuntu
Description:	Ubuntu 11.10
Release:	11.10
Codename:	oneiric</pre>
<p>Espero que les haya gustado el artículo.<strong>Similar Posts:</strong>
<ul class="similar-posts">
<li><a href="http://lineadecodigo.com/java/multiplicar-dos-numeros-con-java/" rel="bookmark" title="Diciembre 30, 2008">Multiplicar dos números con Java</a></li>
<li><a href="http://lineadecodigo.com/java/como-descargar-un-archivo-en-java/" rel="bookmark" title="Marzo 21, 2012">Como descargar un archivo en Java</a></li>
<li><a href="http://lineadecodigo.com/java/pasar-parametros-a-una-aplicacion-java/" rel="bookmark" title="Marzo 1, 2011">Pasar parámetros a una aplicación Java</a></li>
<li><a href="http://lineadecodigo.com/java/lectura-de-caracteres-por-consola-en-java/" rel="bookmark" title="Abril 6, 2007">Lectura de caracteres por consola en Java</a></li>
<li><a href="http://lineadecodigo.com/java/dividir-dos-numeros-con-java/" rel="bookmark" title="Junio 10, 2010">Dividir dos números con Java</a></li>
</ul>
<p><!-- Similar Posts took 8.259 ms --></p>
<script type="text/javascript"> jQuery(document).ready(function($) { window.setTimeout('loadGoogle1_3974()',1000); }); </script><script type="text/javascript"> function loadGoogle1_3974(){ jQuery(document).ready(function($) { $('.dd-google1-3974').remove();$.getScript('https://apis.google.com/js/plusone.js'); }); }</script><!-- Social Buttons Generated by Digg Digg plugin v5.2.6,
    Author : Buffer, Inc
    Website : http://bufferapp.com/diggdigg -->]]></content:encoded>
			<wfw:commentRss>http://lineadecodigo.com/java/como-ejecutar-un-comando-del-sistema-desde-java/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Convertir un número a texto con Java</title>
		<link>http://lineadecodigo.com/java/convertir-un-numero-a-texto-con-java/</link>
		<comments>http://lineadecodigo.com/java/convertir-un-numero-a-texto-con-java/#comments</comments>
		<pubDate>Sun, 08 Apr 2012 19:00:49 +0000</pubDate>
		<dc:creator>Víctor Cuervo</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[centena]]></category>
		<category><![CDATA[decena]]></category>
		<category><![CDATA[digito]]></category>
		<category><![CDATA[división]]></category>
		<category><![CDATA[modulo]]></category>
		<category><![CDATA[numero]]></category>
		<category><![CDATA[switch]]></category>
		<category><![CDATA[texto]]></category>
		<category><![CDATA[unidad]]></category>

		<guid isPermaLink="false">http://lineadecodigo.com/?p=4078</guid>
		<description><![CDATA[Vamos a ver como construir un método con Java al cual le pasemos un número de tres dígitos: unidades, decenas y centenas y nos lo transforme a texto. Es decir, el 534 nos lo transforme en "quinientos treinta y cuatro". Lo primero será crear métodos de apoyo. El primer método de apoyo es el que [...]]]></description>
			<content:encoded><![CDATA[<div class='dd_post_share'><div class='dd_buttons'><div class='dd_button'><div class='dd-google1-ajax-load dd-google1-4078'></div><g:plusone size='medium' href='http://lineadecodigo.com/java/convertir-un-numero-a-texto-con-java/'></g:plusone></div><div class='dd_button'><script src="http://connect.facebook.net/en_US/all.js#xfbml=1"></script><fb:like href="http%3A%2F%2Flineadecodigo.com%2Fjava%2Fconvertir-un-numero-a-texto-con-java%2F" send="false" show_faces="false"  layout="button_count" width="92"  ></fb:like></div><div class='dd_button'><a href="http://twitter.com/share" class="twitter-share-button" data-url="http://lineadecodigo.com/java/convertir-un-numero-a-texto-con-java/" data-count="horizontal" data-text="Convertir un número a texto con Java" data-via="" ></a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div></div><div style='clear:both'></div></div><div style='clear:both'></div><p>Vamos a ver como construir un método con <a href="http://www.manualweb.net/tutorial-java/" title="Manual de Java">Java</a> al cual le pasemos un número de tres dígitos: unidades, decenas y centenas y nos lo transforme a texto. Es decir, el 534 nos lo transforme en "quinientos treinta y cuatro".</p>
<p>Lo primero será crear métodos de apoyo. El primer método de apoyo es el que dado una unidad nos la transforma en texto.</p>
<pre class="java" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> <a href="http://w3api.com/wiki/Java:String"><span style="color: #aaaadd; font-weight: bold;">String</span></a> unidadEnTexto<span style="color: #66cc66;">&#40;</span><span style="color: #993333;">int</span> iNumero<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#123;</span>
<span style="color: #808080; font-style: italic;">// Método que dado un número me lo devuelve en texto</span>
 <span style="color: #b1b100;">switch</span><span style="color: #66cc66;">&#40;</span>iNumero<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#123;</span>
	<span style="color: #b1b100;">case</span> <span style="color: #cc66cc;">1</span>:
		<span style="color: #000000; font-weight: bold;">return</span> <span style="color: #ff0000;">&quot;uno&quot;</span><span style="color: #66cc66;">;</span>
	<span style="color: #b1b100;">case</span> <span style="color: #cc66cc;">2</span>:
		<span style="color: #000000; font-weight: bold;">return</span> <span style="color: #ff0000;">&quot;dos&quot;</span><span style="color: #66cc66;">;</span>
	<span style="color: #b1b100;">case</span> <span style="color: #cc66cc;">3</span>:
		<span style="color: #000000; font-weight: bold;">return</span> <span style="color: #ff0000;">&quot;tres&quot;</span><span style="color: #66cc66;">;</span>
	<span style="color: #b1b100;">case</span> <span style="color: #cc66cc;">4</span>:
		<span style="color: #000000; font-weight: bold;">return</span> <span style="color: #ff0000;">&quot;cuatro&quot;</span><span style="color: #66cc66;">;</span>
	<span style="color: #b1b100;">case</span> <span style="color: #cc66cc;">5</span>:
		<span style="color: #000000; font-weight: bold;">return</span> <span style="color: #ff0000;">&quot;cinco&quot;</span><span style="color: #66cc66;">;</span>
	<span style="color: #b1b100;">case</span> <span style="color: #cc66cc;">6</span>:
		<span style="color: #000000; font-weight: bold;">return</span> <span style="color: #ff0000;">&quot;seis&quot;</span><span style="color: #66cc66;">;</span>
	<span style="color: #b1b100;">case</span> <span style="color: #cc66cc;">7</span>:
		<span style="color: #000000; font-weight: bold;">return</span> <span style="color: #ff0000;">&quot;siete&quot;</span><span style="color: #66cc66;">;</span>
	<span style="color: #b1b100;">case</span> <span style="color: #cc66cc;">8</span>:
		<span style="color: #000000; font-weight: bold;">return</span> <span style="color: #ff0000;">&quot;ocho&quot;</span><span style="color: #66cc66;">;</span>
	<span style="color: #b1b100;">case</span> <span style="color: #cc66cc;">9</span>:
		<span style="color: #000000; font-weight: bold;">return</span> <span style="color: #ff0000;">&quot;nueve&quot;</span><span style="color: #66cc66;">;</span>
	<span style="color: #b1b100;">case</span> <span style="color: #cc66cc;">0</span>:
		<span style="color: #000000; font-weight: bold;">return</span> <span style="color: #ff0000;">&quot;cero&quot;</span><span style="color: #66cc66;">;</span>
	<span style="color: #000000; font-weight: bold;">default</span>:
		<span style="color: #000000; font-weight: bold;">return</span> <span style="color: #ff0000;">&quot;&quot;</span><span style="color: #66cc66;">;</span>
 <span style="color: #66cc66;">&#125;</span>
<span style="color: #66cc66;">&#125;</span></pre>
<p>El siguiente será el de las decenas. Es decir, le pasaremos un número que represente las decenas y nos devolverá el texto. Si le pasamos un 2 nos devolverá "veinte".</p>
<pre class="java" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> <a href="http://w3api.com/wiki/Java:String"><span style="color: #aaaadd; font-weight: bold;">String</span></a> decenaEnTexto<span style="color: #66cc66;">&#40;</span><span style="color: #993333;">int</span> iDecena<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#123;</span>
  <span style="color: #b1b100;">switch</span> <span style="color: #66cc66;">&#40;</span>iDecena<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#123;</span>
	<span style="color: #b1b100;">case</span> <span style="color: #cc66cc;">1</span>:
		<span style="color: #000000; font-weight: bold;">return</span> <span style="color: #ff0000;">&quot;diez&quot;</span><span style="color: #66cc66;">;</span>
	<span style="color: #b1b100;">case</span> <span style="color: #cc66cc;">2</span>:
		<span style="color: #000000; font-weight: bold;">return</span> <span style="color: #ff0000;">&quot;veinte&quot;</span><span style="color: #66cc66;">;</span>
	<span style="color: #b1b100;">case</span> <span style="color: #cc66cc;">3</span>:
		<span style="color: #000000; font-weight: bold;">return</span> <span style="color: #ff0000;">&quot;treinta&quot;</span><span style="color: #66cc66;">;</span>
	<span style="color: #b1b100;">case</span> <span style="color: #cc66cc;">4</span>:
		<span style="color: #000000; font-weight: bold;">return</span> <span style="color: #ff0000;">&quot;cuarenta&quot;</span><span style="color: #66cc66;">;</span>
	<span style="color: #b1b100;">case</span> <span style="color: #cc66cc;">5</span>:
		<span style="color: #000000; font-weight: bold;">return</span> <span style="color: #ff0000;">&quot;cincuenta&quot;</span><span style="color: #66cc66;">;</span>
	<span style="color: #b1b100;">case</span> <span style="color: #cc66cc;">6</span>:
		<span style="color: #000000; font-weight: bold;">return</span> <span style="color: #ff0000;">&quot;sesenta&quot;</span><span style="color: #66cc66;">;</span>
	<span style="color: #b1b100;">case</span> <span style="color: #cc66cc;">7</span>:
		<span style="color: #000000; font-weight: bold;">return</span> <span style="color: #ff0000;">&quot;setenta&quot;</span><span style="color: #66cc66;">;</span>
	<span style="color: #b1b100;">case</span> <span style="color: #cc66cc;">8</span>:
		<span style="color: #000000; font-weight: bold;">return</span> <span style="color: #ff0000;">&quot;ochenta&quot;</span><span style="color: #66cc66;">;</span>
	<span style="color: #b1b100;">case</span> <span style="color: #cc66cc;">9</span>:
		<span style="color: #000000; font-weight: bold;">return</span> <span style="color: #ff0000;">&quot;noventa&quot;</span><span style="color: #66cc66;">;</span>
	<span style="color: #000000; font-weight: bold;">default</span>:
		<span style="color: #000000; font-weight: bold;">return</span> <span style="color: #ff0000;">&quot;&quot;</span><span style="color: #66cc66;">;</span>
  <span style="color: #66cc66;">&#125;</span>
<span style="color: #66cc66;">&#125;</span></pre>
<p>Todas las decenas las podemos montar con el texto de la decena y el texto de la unidad, añadiendo un "y" en medio. Así 22 sería "veinte y dos". Hay un caso especial a tener en cuenta y este es el de las decenas del diez. Así que para ese caso nos montamos otro método de apoyo.</p>
<pre class="java" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> <a href="http://w3api.com/wiki/Java:String"><span style="color: #aaaadd; font-weight: bold;">String</span></a> decenas<span style="color: #66cc66;">&#40;</span><span style="color: #993333;">int</span> iDecena<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#123;</span>
  <span style="color: #b1b100;">switch</span> <span style="color: #66cc66;">&#40;</span>iDecena<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#123;</span>
	<span style="color: #b1b100;">case</span> <span style="color: #cc66cc;">11</span>:
		<span style="color: #000000; font-weight: bold;">return</span> <span style="color: #ff0000;">&quot;once&quot;</span><span style="color: #66cc66;">;</span>
	<span style="color: #b1b100;">case</span> <span style="color: #cc66cc;">12</span>:
		<span style="color: #000000; font-weight: bold;">return</span> <span style="color: #ff0000;">&quot;doce&quot;</span><span style="color: #66cc66;">;</span>
	<span style="color: #b1b100;">case</span> <span style="color: #cc66cc;">13</span>:
		<span style="color: #000000; font-weight: bold;">return</span> <span style="color: #ff0000;">&quot;trece&quot;</span><span style="color: #66cc66;">;</span>
	<span style="color: #b1b100;">case</span> <span style="color: #cc66cc;">14</span>:
		<span style="color: #000000; font-weight: bold;">return</span> <span style="color: #ff0000;">&quot;catorce&quot;</span><span style="color: #66cc66;">;</span>
	<span style="color: #b1b100;">case</span> <span style="color: #cc66cc;">15</span>:
		<span style="color: #000000; font-weight: bold;">return</span> <span style="color: #ff0000;">&quot;quince&quot;</span><span style="color: #66cc66;">;</span>
	<span style="color: #b1b100;">case</span> <span style="color: #cc66cc;">16</span>:
		<span style="color: #000000; font-weight: bold;">return</span> <span style="color: #ff0000;">&quot;dieciseis&quot;</span><span style="color: #66cc66;">;</span>
	<span style="color: #b1b100;">case</span> <span style="color: #cc66cc;">17</span>:
		<span style="color: #000000; font-weight: bold;">return</span> <span style="color: #ff0000;">&quot;diecisiete&quot;</span><span style="color: #66cc66;">;</span>
	<span style="color: #b1b100;">case</span> <span style="color: #cc66cc;">18</span>:
		<span style="color: #000000; font-weight: bold;">return</span> <span style="color: #ff0000;">&quot;dieciocho&quot;</span><span style="color: #66cc66;">;</span>
	<span style="color: #b1b100;">case</span> <span style="color: #cc66cc;">19</span>:
		<span style="color: #000000; font-weight: bold;">return</span> <span style="color: #ff0000;">&quot;diecinueve&quot;</span><span style="color: #66cc66;">;</span>
	<span style="color: #000000; font-weight: bold;">default</span>:
		<span style="color: #000000; font-weight: bold;">return</span> <span style="color: #ff0000;">&quot;&quot;</span><span style="color: #66cc66;">;</span>
  <span style="color: #66cc66;">&#125;</span>
<span style="color: #66cc66;">&#125;</span></pre>
<p>Y lo último igual para las centenas. Si bien es verdad que aquí solo se nos devolverá el relativo a los cientos, quinientos y novecientos. Ya que para el testo de centenas lo podemos montar mediante la unidad y añadiendo el sufijo cientos. Así tendremos dos-cientos, tres-cientos,...</p>
<pre class="java" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> <a href="http://w3api.com/wiki/Java:String"><span style="color: #aaaadd; font-weight: bold;">String</span></a> centenaEnTexto<span style="color: #66cc66;">&#40;</span><span style="color: #993333;">int</span> iCentena<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#123;</span>
  <span style="color: #b1b100;">switch</span> <span style="color: #66cc66;">&#40;</span>iCentena<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#123;</span>
	<span style="color: #b1b100;">case</span> <span style="color: #cc66cc;">1</span>:
		<span style="color: #000000; font-weight: bold;">return</span> <span style="color: #ff0000;">&quot;ciento&quot;</span><span style="color: #66cc66;">;</span>
	<span style="color: #b1b100;">case</span> <span style="color: #cc66cc;">5</span>:
		<span style="color: #000000; font-weight: bold;">return</span> <span style="color: #ff0000;">&quot;quinientos&quot;</span><span style="color: #66cc66;">;</span>
	<span style="color: #b1b100;">case</span> <span style="color: #cc66cc;">9</span>:
		<span style="color: #000000; font-weight: bold;">return</span> <span style="color: #ff0000;">&quot;novecientos&quot;</span><span style="color: #66cc66;">;</span>
	<span style="color: #000000; font-weight: bold;">default</span>:
		<span style="color: #000000; font-weight: bold;">return</span> <span style="color: #ff0000;">&quot;&quot;</span><span style="color: #66cc66;">;</span>
  <span style="color: #66cc66;">&#125;</span>
<span style="color: #66cc66;">&#125;</span></pre>
<p>Ahora solo nos queda desmontar el número e ir llamando a las funciones de apoyo necesarias. Para ir obteniendo por dígitos nos apoyamos en el módulo y división de 10. Ya que el módulo nos deja el dígito y la división el resto del número.</p>
<p>Así, para las unidades sería:</p>
<pre class="java" style="font-family:monospace;"><span style="color: #993333;">int</span> iUnidad = iNumero<span style="color: #66cc66;">%</span>10<span style="color: #66cc66;">;</span>
iNumero = iNumero/<span style="color: #cc66cc;">10</span><span style="color: #66cc66;">;</span>
sTexto = unidadEnTexto<span style="color: #66cc66;">&#40;</span>iUnidad<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span></pre>
<p>La conversión de la unidad ha sido sencilla ya que solo hemos tenido que llamar al método unidadEnTexto.</p>
<p>Vamos con las decenas, para obtener la decena el mismo mecanismo que antes.</p>
<pre class="java" style="font-family:monospace;"><span style="color: #993333;">int</span> iDecena = iNumero<span style="color: #66cc66;">%</span>10<span style="color: #66cc66;">;</span>
iNumero = iNumero/<span style="color: #cc66cc;">10</span><span style="color: #66cc66;">;</span>
&nbsp;
<span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#40;</span>iUnidad==<span style="color: #cc66cc;">0</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&amp;&amp;</span> <span style="color: #66cc66;">&#40;</span>iDecena<span style="color: #66cc66;">&gt;</span><span style="color: #cc66cc;">0</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
	sTexto = decenaEnTexto<span style="color: #66cc66;">&#40;</span>iDecena<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
<span style="color: #b1b100;">else</span> <span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span>iDecena==<span style="color: #cc66cc;">1</span><span style="color: #66cc66;">&#41;</span>
	sTexto = decenas<span style="color: #66cc66;">&#40;</span><span style="color: #cc66cc;">10</span>+iUnidad<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
<span style="color: #b1b100;">else</span> <span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span>iDecena <span style="color: #66cc66;">&gt;</span> <span style="color: #cc66cc;">1</span><span style="color: #66cc66;">&#41;</span>
	sTexto = decenaEnTexto<span style="color: #66cc66;">&#40;</span>iDecena<span style="color: #66cc66;">&#41;</span> + <span style="color: #ff0000;">&quot; y &quot;</span> + sTexto<span style="color: #66cc66;">;</span></pre>
<p>Aqui tenemos tres casos.</p>
<ul>
<li>Si la unidad era un cero, pedimos la decena y será el texto único.</li>
<li>Si la decena empieza por uno, caso especial y por lo tantto llamamos al método de las decenas.</li>
<li>Otros casos componemos con la decena y la unidad juntas con un "y".</li>
</ul>
<p>El último caso, las centenas.</p>
<pre class="java" style="font-family:monospace;"><span style="color: #993333;">int</span> iCentena = iNumero<span style="color: #66cc66;">%</span>10<span style="color: #66cc66;">;</span>
&nbsp;
<span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#40;</span>iCentena<span style="color: #66cc66;">!</span>=<span style="color: #cc66cc;">1</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&amp;&amp;</span> <span style="color: #66cc66;">&#40;</span>iCentena<span style="color: #66cc66;">!</span>=<span style="color: #cc66cc;">5</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&amp;&amp;</span> <span style="color: #66cc66;">&#40;</span>iCentena<span style="color: #66cc66;">!</span>=<span style="color: #cc66cc;">9</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&amp;&amp;</span> <span style="color: #66cc66;">&#40;</span>iCentena<span style="color: #66cc66;">!</span>=<span style="color: #cc66cc;">0</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
	sTexto = unidadEnTexto<span style="color: #66cc66;">&#40;</span>iCentena<span style="color: #66cc66;">&#41;</span> + <span style="color: #ff0000;">&quot;cientos&quot;</span> + <span style="color: #ff0000;">&quot; &quot;</span> + sTexto<span style="color: #66cc66;">;</span>
<span style="color: #b1b100;">else</span> <span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#40;</span>iCentena==<span style="color: #cc66cc;">1</span><span style="color: #66cc66;">&#41;</span> || <span style="color: #66cc66;">&#40;</span>iCentena==<span style="color: #cc66cc;">5</span><span style="color: #66cc66;">&#41;</span> || <span style="color: #66cc66;">&#40;</span>iCentena==<span style="color: #cc66cc;">9</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
	sTexto = centenaEnTexto<span style="color: #66cc66;">&#40;</span>iCentena<span style="color: #66cc66;">&#41;</span> + <span style="color: #ff0000;">&quot; &quot;</span> + sTexto<span style="color: #66cc66;">;</span></pre>
<p>En este caso solo hay el dilema del 1, 5 y 9. Así que un if y solucionado. El resto de las centenas las montamos con la unidad en texto más el texto "cientos".</p>
<p>Así, finalmente, hemos dejado en sTexto el número convertido a texto con <a href="http://www.manualweb.net/tutorial-java/" title="Manual de Java">Java</a>.<strong>Similar Posts:</strong>
<ul class="similar-posts">
<li><a href="http://lineadecodigo.com/java/calcular-el-numero-feliz-con-java/" rel="bookmark" title="Mayo 5, 2012">Calcular el número feliz con Java</a></li>
<li><a href="http://lineadecodigo.com/java/sumatorio-de-un-numero-de-forma-recursiva/" rel="bookmark" title="Junio 24, 2007">Sumatorio de un numero de forma recursiva</a></li>
<li><a href="http://lineadecodigo.com/java/tablas-de-multiplicar-recursivas-en-java/" rel="bookmark" title="Febrero 12, 2008">Tablas de multiplicar recursivas en Java</a></li>
<li><a href="http://lineadecodigo.com/java/notas-americanas/" rel="bookmark" title="Abril 9, 2007">Notas Americanas</a></li>
<li><a href="http://lineadecodigo.com/java/calcular-signo-del-zodiaco-con-java/" rel="bookmark" title="Septiembre 5, 2010">Calcular signo del zodiaco con Java</a></li>
</ul>
<p><!-- Similar Posts took 5.778 ms --></p>
<script type="text/javascript"> jQuery(document).ready(function($) { window.setTimeout('loadGoogle1_4078()',1000); }); </script><script type="text/javascript"> function loadGoogle1_4078(){ jQuery(document).ready(function($) { $('.dd-google1-4078').remove();$.getScript('https://apis.google.com/js/plusone.js'); }); }</script><!-- Social Buttons Generated by Digg Digg plugin v5.2.6,
    Author : Buffer, Inc
    Website : http://bufferapp.com/diggdigg -->]]></content:encoded>
			<wfw:commentRss>http://lineadecodigo.com/java/convertir-un-numero-a-texto-con-java/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Acceder a un directorio de un FTP con Java</title>
		<link>http://lineadecodigo.com/java/acceder-a-un-directorio-de-un-ftp-con-java/</link>
		<comments>http://lineadecodigo.com/java/acceder-a-un-directorio-de-un-ftp-con-java/#comments</comments>
		<pubDate>Thu, 22 Mar 2012 07:00:22 +0000</pubDate>
		<dc:creator>Víctor Cuervo</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[changeWorkingDirectory]]></category>
		<category><![CDATA[connect]]></category>
		<category><![CDATA[disconnect]]></category>
		<category><![CDATA[FTPClient]]></category>
		<category><![CDATA[login]]></category>
		<category><![CDATA[logout]]></category>
		<category><![CDATA[printWorkingDirectory]]></category>

		<guid isPermaLink="false">http://lineadecodigo.com/?p=4006</guid>
		<description><![CDATA[Ya vimos en un ejemplo los pasos que hay que seguir para conectarse a un FTP mediante un programa en Java. Con ese código veíamos como acceder al directorio raíz del FTP. Para ello utilizábamos las librerías Apache Commons. Ahora vamos a ver cómo podemos acceder con Java a un directorio concreto del FTP para [...]]]></description>
			<content:encoded><![CDATA[<div class='dd_post_share'><div class='dd_buttons'><div class='dd_button'><div class='dd-google1-ajax-load dd-google1-4006'></div><g:plusone size='medium' href='http://lineadecodigo.com/java/acceder-a-un-directorio-de-un-ftp-con-java/'></g:plusone></div><div class='dd_button'><script src="http://connect.facebook.net/en_US/all.js#xfbml=1"></script><fb:like href="http%3A%2F%2Flineadecodigo.com%2Fjava%2Facceder-a-un-directorio-de-un-ftp-con-java%2F" send="false" show_faces="false"  layout="button_count" width="92"  ></fb:like></div><div class='dd_button'><a href="http://twitter.com/share" class="twitter-share-button" data-url="http://lineadecodigo.com/java/acceder-a-un-directorio-de-un-ftp-con-java/" data-count="horizontal" data-text="Acceder a un directorio de un FTP con Java" data-via="" ></a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div></div><div style='clear:both'></div></div><div style='clear:both'></div><p>Ya vimos en un ejemplo los pasos que hay que seguir para conectarse a un FTP mediante un programa en <a href="http://www.manualweb.net/tutorial-java/" title="Tutorial de Java">Java</a>. Con ese código veíamos como acceder al directorio raíz del FTP. Para ello utilizábamos las <a href="http://commons.apache.org/" title="Librerías Apache Commons">librerías Apache Commons</a>.</p>
<p>Ahora vamos a ver cómo podemos acceder con <a href="http://www.manualweb.net/tutorial-java/" title="Tutorial de Java">Java</a> a un directorio concreto del FTP para acceder a su información.</p>
<p>Lo primero de todo será conectarnos al FTP. Así que creamos una clase FTPClient.</p>
<pre class="java" style="font-family:monospace;">FTPClient client = <span style="color: #000000; font-weight: bold;">new</span> FTPClient<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
client.<span style="color: #006600;">connect</span><span style="color: #66cc66;">&#40;</span>sFTP<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
<span style="color: #993333;">boolean</span> login = client.<span style="color: #006600;">login</span><span style="color: #66cc66;">&#40;</span>sUser,sPassword<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span></pre>
<p>Los métodos connect() y login() nos permiten establecer la conexión y el login sobre el servidor del FTP.</p>
<p>Una vez conectados al servidor FTP podemos ver el directorio al que estamos conectados mediante el método printWorkingDirectory().</p>
<pre class="java" style="font-family:monospace;"><a href="http://w3api.com/wiki/Java:System"><span style="color: #aaaadd; font-weight: bold;">System</span></a>.<span style="color: #006600;">out</span>.<span style="color: #006600;">println</span><span style="color: #66cc66;">&#40;</span>client.<span style="color: #006600;">printWorkingDirectory</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span></pre>
<p>Ahora pasaremos a cambiar de directorio dentro del servidor. En este caso vamos a apoyarnos en el método changeWorkingDirectory() indicándole el directorio al que queremos cambiar como parámetro.</p>
<pre class="java" style="font-family:monospace;">client.<span style="color: #006600;">changeWorkingDirectory</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\\</span>httpdocs&quot;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
<a href="http://w3api.com/wiki/Java:System"><span style="color: #aaaadd; font-weight: bold;">System</span></a>.<span style="color: #006600;">out</span>.<span style="color: #006600;">println</span><span style="color: #66cc66;">&#40;</span>client.<span style="color: #006600;">printWorkingDirectory</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span></pre>
<p>De esta forma y después de acceder al directorio, ya podemos operar sobre él.</p>
<p>Para finalizar nuestro código <a href="http://www.manualweb.net/tutorial-java/" title="Tutorial de Java">Java</a> no podemos olvidarnos de desconectarnos del servidor.</p>
<pre class="java" style="font-family:monospace;">client.<span style="color: #006600;">logout</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
client.<span style="color: #006600;">disconnect</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span></pre>
<p><strong>Similar Posts:</strong>
<ul class="similar-posts">
<li><a href="http://lineadecodigo.com/java/conectarse-a-un-ftp-con-java/" rel="bookmark" title="Septiembre 7, 2011">Conectarse a un FTP con Java</a></li>
<li><a href="http://lineadecodigo.com/java/saber-si-una-ruta-es-un-directorio-con-java/" rel="bookmark" title="Febrero 1, 2009">Saber si una ruta es un directorio con Java</a></li>
<li><a href="http://lineadecodigo.com/java/directorio-temporal-del-sistema-en-java/" rel="bookmark" title="Noviembre 22, 2011">Directorio Temporal del Sistema en Java</a></li>
<li><a href="http://lineadecodigo.com/java/listar-un-directorio-con-java-io/" rel="bookmark" title="Julio 11, 2007">Listar un directorio con Java IO</a></li>
<li><a href="http://lineadecodigo.com/java/conocer-el-directorio-de-trabajo-de-java/" rel="bookmark" title="Septiembre 14, 2011">Conocer el directorio de trabajo de Java</a></li>
</ul>
<p><!-- Similar Posts took 5.855 ms --></p>
<script type="text/javascript"> jQuery(document).ready(function($) { window.setTimeout('loadGoogle1_4006()',1000); }); </script><script type="text/javascript"> function loadGoogle1_4006(){ jQuery(document).ready(function($) { $('.dd-google1-4006').remove();$.getScript('https://apis.google.com/js/plusone.js'); }); }</script><!-- Social Buttons Generated by Digg Digg plugin v5.2.6,
    Author : Buffer, Inc
    Website : http://bufferapp.com/diggdigg -->]]></content:encoded>
			<wfw:commentRss>http://lineadecodigo.com/java/acceder-a-un-directorio-de-un-ftp-con-java/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Como descargar un archivo en Java</title>
		<link>http://lineadecodigo.com/java/como-descargar-un-archivo-en-java/</link>
		<comments>http://lineadecodigo.com/java/como-descargar-un-archivo-en-java/#comments</comments>
		<pubDate>Wed, 21 Mar 2012 07:00:44 +0000</pubDate>
		<dc:creator>Feffo</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[archivo]]></category>
		<category><![CDATA[auto-autolizables]]></category>
		<category><![CDATA[byte]]></category>
		<category><![CDATA[descargar]]></category>
		<category><![CDATA[exists]]></category>
		<category><![CDATA[File]]></category>
		<category><![CDATA[InputStream]]></category>
		<category><![CDATA[IOException]]></category>
		<category><![CDATA[MalformedURLException]]></category>
		<category><![CDATA[OutputStream]]></category>
		<category><![CDATA[renameTo]]></category>
		<category><![CDATA[URLConnection]]></category>

		<guid isPermaLink="false">http://lineadecodigo.com/?p=3940</guid>
		<description><![CDATA[Como mi primera colaboración en Linea de Codigo les voy a presentar una forma muy simple para poder descargar cualquier archivo desde Java. Sin duda, es una solución simple a un problema relativamente recurrente, pero que con un poco de maña pueden hacer algo muy poderoso, y quizás hasta profesional, como lo es un programa [...]]]></description>
			<content:encoded><![CDATA[<div class='dd_post_share'><div class='dd_buttons'><div class='dd_button'><div class='dd-google1-ajax-load dd-google1-3940'></div><g:plusone size='medium' href='http://lineadecodigo.com/java/como-descargar-un-archivo-en-java/'></g:plusone></div><div class='dd_button'><script src="http://connect.facebook.net/en_US/all.js#xfbml=1"></script><fb:like href="http%3A%2F%2Flineadecodigo.com%2Fjava%2Fcomo-descargar-un-archivo-en-java%2F" send="false" show_faces="false"  layout="button_count" width="92"  ></fb:like></div><div class='dd_button'><a href="http://twitter.com/share" class="twitter-share-button" data-url="http://lineadecodigo.com/java/como-descargar-un-archivo-en-java/" data-count="horizontal" data-text="Como descargar un archivo en Java" data-via="" ></a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div></div><div style='clear:both'></div></div><div style='clear:both'></div><p>Como mi primera colaboración en <a href="http://lineadecodigo.com" title="Linea de Código">Linea de Codigo</a> les voy a presentar una forma muy simple para poder descargar cualquier archivo desde <a href="http://www.manualweb.net/tutorial-java/" title="Manual de Java">Java</a>. <img src='http://img.aulambra.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Sin duda, es una solución simple a un problema relativamente recurrente, pero que con un poco de maña pueden hacer algo muy poderoso, y quizás hasta profesional, como lo es un programa Auto-Actualizable.<br />
(Abajo del todo les cuento un poco sobre mi experiencia sobre este tema.)</p>
<p>Pero primero es lo primero, y para empezar vamos a necesitar los siguientes elementos <a href="http://www.manualweb.net/tutorial-java/" title="Manual de Java">Java</a> para realizar una descarga.<br />
Estos son:</p>
<pre class="java" style="font-family:monospace;"><a href="http://w3api.com/wiki/Java:String"><span style="color: #aaaadd; font-weight: bold;">String</span></a> url = <span style="color: #ff0000;">&quot;http://i.imgur.com/HZ1hq.jpg&quot;</span><span style="color: #66cc66;">;</span> <span style="color: #808080; font-style: italic;">//dirección url del recurso a descargar</span>
<a href="http://w3api.com/wiki/Java:String"><span style="color: #aaaadd; font-weight: bold;">String</span></a> name = <span style="color: #ff0000;">&quot;lineadecodigo.jpg&quot;</span><span style="color: #66cc66;">;</span> <span style="color: #808080; font-style: italic;">//nombre del archivo destino</span></pre>
<p>Por cuestiones de prolijidad y organización está bueno que los archivos sean destinados a una carpeta especial encargada de almacenarlos, en vez de que anden dando vueltas por ahí.</p>
<p>Lo siguiente que debemos hacer en nuestro programa <a href="http://www.manualweb.net/tutorial-java/" title="Manual de Java">Java</a> es crear la carpeta destino, si es que esta no existe. En caso de no poder crearla el programa se abortará, ya que si no puede crear una carpeta, es muy probable que tampoco pueda crear el archivo destino de la descarga.</p>
<pre class="java" style="font-family:monospace;"><span style="color: #808080; font-style: italic;">//Directorio destino para las descargas</span>
<a href="http://w3api.com/wiki/Java:String"><span style="color: #aaaadd; font-weight: bold;">String</span></a> folder = <span style="color: #ff0000;">&quot;descargas/&quot;</span><span style="color: #66cc66;">;</span>
&nbsp;
<span style="color: #808080; font-style: italic;">//Crea el directorio de destino en caso de que no exista</span>
<a href="http://w3api.com/wiki/Java:File"><span style="color: #aaaadd; font-weight: bold;">File</span></a> dir = <span style="color: #000000; font-weight: bold;">new</span> <a href="http://w3api.com/wiki/Java:File"><span style="color: #aaaadd; font-weight: bold;">File</span></a><span style="color: #66cc66;">&#40;</span>folder<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
&nbsp;
<span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">!</span>dir.<span style="color: #006600;">exists</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
  <span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">!</span>dir.<span style="color: #006600;">mkdir</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
    <span style="color: #000000; font-weight: bold;">return</span><span style="color: #66cc66;">;</span> <span style="color: #808080; font-style: italic;">// no se pudo crear la carpeta de destino</span></pre>
<p>Por como esta planteado, si ya existía un archivo con el mismo nombre que el archivo destino, este va a ser reemplazado, con el uso del metodo <a href="http://w3api.com/wiki/Java:File.exists()" title="Metodo exits de la clase File de Java">public boolean exists()</a> se puede solucionar.</p>
<p>Además, tengan en cuenta que el método <a href="http://w3api.com/wiki/Java:File.renameTo()" title="Metodo renameTo de la clase File de Java"> public boolean renameTo(File dest)</a> no funciona bien en Windows, siempre retornara <em>false</em> y nunca hará su cometido. Esto lo digo por si quieren usar archivos con un nombre temporal, puede que tengan problemas a la hora de renombrarlo.</p>
<p>Una vez hecho esto estamos en condiciones de empezar la descarga del archivo elegido en <a href="http://www.manualweb.net/tutorial-java/" title="Manual de Java">Java</a>.</p>
<p>Esto se realiza de la siguiente forma:</p>
<ol>
<li>Crear el archivo destino.</li>
<li>Establecer la conexión con la url.</li>
<li>Abrir los streams necesarios.</li>
<li>Leer y escribir hasta encontrar el fin del archivo.</li>
<li>Cerrar los streams (¡Importante!).</li>
</ol>
<p>Creamos el archivo destino, en caso de existir lo elimina:</p>
<pre class="java" style="font-family:monospace;"><a href="http://w3api.com/wiki/Java:File"><span style="color: #aaaadd; font-weight: bold;">File</span></a> file = <span style="color: #000000; font-weight: bold;">new</span> <a href="http://w3api.com/wiki/Java:File"><span style="color: #aaaadd; font-weight: bold;">File</span></a><span style="color: #66cc66;">&#40;</span>folder + name<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span></pre>
<p>Establece la conexion con la url mediante una clase <a href="http://www.w3api.com/wiki/Java:URLConnection" title="Clase Java URLConnection">URLConnection</a>:</p>
<pre class="java" style="font-family:monospace;"><a href="http://w3api.com/wiki/Java:URLConnection"><span style="color: #aaaadd; font-weight: bold;">URLConnection</span></a> conn = <span style="color: #000000; font-weight: bold;">new</span> <a href="http://w3api.com/wiki/Java:URL"><span style="color: #aaaadd; font-weight: bold;">URL</span></a><span style="color: #66cc66;">&#40;</span>url<span style="color: #66cc66;">&#41;</span>.<span style="color: #006600;">openConnection</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
conn.<span style="color: #006600;">connect</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
<a href="http://w3api.com/wiki/Java:System"><span style="color: #aaaadd; font-weight: bold;">System</span></a>.<span style="color: #006600;">out</span>.<span style="color: #006600;">println</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\n</span>empezando descarga: <span style="color: #000099; font-weight: bold;">\n</span>&quot;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
<a href="http://w3api.com/wiki/Java:System"><span style="color: #aaaadd; font-weight: bold;">System</span></a>.<span style="color: #006600;">out</span>.<span style="color: #006600;">println</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;&amp;gt;&amp;gt; URL: &quot;</span> + url<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
<a href="http://w3api.com/wiki/Java:System"><span style="color: #aaaadd; font-weight: bold;">System</span></a>.<span style="color: #006600;">out</span>.<span style="color: #006600;">println</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;&amp;gt;&amp;gt; Nombre: &quot;</span> + name<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
<a href="http://w3api.com/wiki/Java:System"><span style="color: #aaaadd; font-weight: bold;">System</span></a>.<span style="color: #006600;">out</span>.<span style="color: #006600;">println</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;&amp;gt;&amp;gt; tamaño: &quot;</span> + conn.<span style="color: #006600;">getContentLength</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span> + <span style="color: #ff0000;">&quot; bytes&quot;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span></pre>
<p>Abrimos los Stream:</p>
<pre class="java" style="font-family:monospace;"><a href="http://w3api.com/wiki/Java:InputStream"><span style="color: #aaaadd; font-weight: bold;">InputStream</span></a> in = conn.<span style="color: #006600;">getInputStream</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
<a href="http://w3api.com/wiki/Java:OutputStream"><span style="color: #aaaadd; font-weight: bold;">OutputStream</span></a> out = <span style="color: #000000; font-weight: bold;">new</span> <a href="http://w3api.com/wiki/Java:FileOutputStream"><span style="color: #aaaadd; font-weight: bold;">FileOutputStream</span></a><span style="color: #66cc66;">&#40;</span>file<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span></pre>
<p>Mediante un bucle vamos leyendo del <a href="http://www.w3api.com/wiki/Java:InputStream" title="Clase InputStream de Java">InputStream</a> y vamos escribiendo en el <a href="http://www.w3api.com/wiki/Java:OutputStream" title="Clase Java OutputStream">OutputStream</a>. Vamos leyendo de a un byte por vez y los escribe en un archivo. El -1 significa que se llego al final.</p>
<pre class="java" style="font-family:monospace;"><span style="color: #993333;">int</span> b = <span style="color: #cc66cc;">0</span><span style="color: #66cc66;">;</span>
<span style="color: #b1b100;">while</span> <span style="color: #66cc66;">&#40;</span>b <span style="color: #66cc66;">!</span>= -<span style="color: #cc66cc;">1</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span>
  b = in.<span style="color: #006600;">read</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
  <span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span>b <span style="color: #66cc66;">!</span>= -<span style="color: #cc66cc;">1</span><span style="color: #66cc66;">&#41;</span>
    out.<span style="color: #006600;">write</span><span style="color: #66cc66;">&#40;</span>b<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
<span style="color: #66cc66;">&#125;</span></pre>
<p>Cerramos los streams:</p>
<pre class="java" style="font-family:monospace;">out.<span style="color: #006600;">close</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
in.<span style="color: #006600;">close</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span></pre>
<p>En todo el código de manejo del URLConnection y de los Stream debemos de controlar las excepciones <a href="http://www.w3api.com/wiki/Java:MalformedURLException" title="MalformedURLException">MalformedURLException</a> e <a href="http://www.w3api.com/wiki/Java:IOException" title="Excepción Java IOException">IOException</a>.</p>
<pre class="java" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">try</span> <span style="color: #66cc66;">&#123;</span>
 ...
<span style="color: #66cc66;">&#125;</span> <span style="color: #000000; font-weight: bold;">catch</span> <span style="color: #66cc66;">&#40;</span><a href="http://w3api.com/wiki/Java:MalformedURLException"><span style="color: #aaaadd; font-weight: bold;">MalformedURLException</span></a> e<span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span>
  <a href="http://w3api.com/wiki/Java:System"><span style="color: #aaaadd; font-weight: bold;">System</span></a>.<span style="color: #006600;">out</span>.<span style="color: #006600;">println</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;la url: &quot;</span> + url + <span style="color: #ff0000;">&quot; no es valida!&quot;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
<span style="color: #66cc66;">&#125;</span> <span style="color: #000000; font-weight: bold;">catch</span> <span style="color: #66cc66;">&#40;</span><a href="http://w3api.com/wiki/Java:IOException"><span style="color: #aaaadd; font-weight: bold;">IOException</span></a> e<span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span>
  e.<span style="color: #006600;">printStackTrace</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
<span style="color: #66cc66;">&#125;</span></pre>
<p>Un poco mas sobre programas auto-actualizables. ¿Cuál es la clave de esto?</p>
<ol>
<li>Conseguir un servidor (como googlecode) que permita almacenar archivos en una url que no se vea modificada entre cambios.</li>
<li>Una forma de versionado, por mas simple que sea, para poder reconocer si hay versiones nuevas o no.</li>
</ol>
<p>De esta forma, podrían almacenar en un txt una lista de direcciones url correspondientes a los archivos que deben ser actualizados. Entonces, descargan ese txt, luego lo recorren como a cualquier archivo y por cada url que encuentre en él, inicien una descarga. Finalmente, reemplazan esos archivos con sus predecesores y mediante un dialogo le piden al usuario que reinicie el programa y luego lo cierran con:</p>
<pre class="java" style="font-family:monospace;"><a href="http://w3api.com/wiki/Java:System"><span style="color: #aaaadd; font-weight: bold;">System</span></a>.<span style="color: #006600;">exit</span> <span style="color: #66cc66;">&#40;</span><span style="color: #cc66cc;">0</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span></pre>
<p>O algo por el estilo.</p>
<p>Esto, sinceramente, les va a solucionar muchos problemas en cuanto a tiempo, ya que pueden actualizar sus programas directamente desde la comodidad de su casa.</p>
<p>¿Se les ocurre alguna otra utilidad? ¿Le harían alguna modificación al código <a href="http://www.manualweb.net/tutorial-java/" title="Manual de Java">Java</a>?<strong>Similar Posts:</strong>
<ul class="similar-posts">
<li><a href="http://lineadecodigo.com/java/crear-la-ruta-de-un-fichero-con-java/" rel="bookmark" title="Febrero 25, 2012">Crear la ruta de un fichero con Java</a></li>
<li><a href="http://lineadecodigo.com/java/evitar-que-un-programa-java-se-cargue-dos-veces/" rel="bookmark" title="Febrero 22, 2012">Evitar que un programa Java se cargue dos veces</a></li>
<li><a href="http://lineadecodigo.com/java/renombrar-un-fichero-con-java-io/" rel="bookmark" title="Noviembre 25, 2006">Renombrar un fichero con Java IO</a></li>
<li><a href="http://lineadecodigo.com/java/copiar-directorio-con-java/" rel="bookmark" title="Septiembre 13, 2011">Copiar directorio con Java</a></li>
<li><a href="http://lineadecodigo.com/java/saber-si-una-ruta-es-un-directorio-con-java/" rel="bookmark" title="Febrero 1, 2009">Saber si una ruta es un directorio con Java</a></li>
</ul>
<p><!-- Similar Posts took 5.679 ms --></p>
<script type="text/javascript"> jQuery(document).ready(function($) { window.setTimeout('loadGoogle1_3940()',1000); }); </script><script type="text/javascript"> function loadGoogle1_3940(){ jQuery(document).ready(function($) { $('.dd-google1-3940').remove();$.getScript('https://apis.google.com/js/plusone.js'); }); }</script><!-- Social Buttons Generated by Digg Digg plugin v5.2.6,
    Author : Buffer, Inc
    Website : http://bufferapp.com/diggdigg -->]]></content:encoded>
			<wfw:commentRss>http://lineadecodigo.com/java/como-descargar-un-archivo-en-java/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Formato a Fechas en Java con DateFormat</title>
		<link>http://lineadecodigo.com/java/formato-a-fechas-en-java-con-dateformat/</link>
		<comments>http://lineadecodigo.com/java/formato-a-fechas-en-java-con-dateformat/#comments</comments>
		<pubDate>Fri, 16 Mar 2012 18:30:18 +0000</pubDate>
		<dc:creator>Emmanuel Ramos</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Date]]></category>
		<category><![CDATA[DateFormat]]></category>
		<category><![CDATA[getDateInstance]]></category>
		<category><![CDATA[java text]]></category>
		<category><![CDATA[Java Util]]></category>
		<category><![CDATA[Locale]]></category>

		<guid isPermaLink="false">http://lineadecodigo.com/?p=3956</guid>
		<description><![CDATA[En el dia de hoy les explicare como formatear una fecha en Java. Lo primero que haremos será usar una de las clases de el paquete java.text. Esta clase es DateFormat. De igual manera utilizaremos la clase Date y Locale del paquete java.util. Un detalle de la clase DateFormat de Java es que es abstracta [...]]]></description>
			<content:encoded><![CDATA[<div class='dd_post_share'><div class='dd_buttons'><div class='dd_button'><div class='dd-google1-ajax-load dd-google1-3956'></div><g:plusone size='medium' href='http://lineadecodigo.com/java/formato-a-fechas-en-java-con-dateformat/'></g:plusone></div><div class='dd_button'><script src="http://connect.facebook.net/en_US/all.js#xfbml=1"></script><fb:like href="http%3A%2F%2Flineadecodigo.com%2Fjava%2Fformato-a-fechas-en-java-con-dateformat%2F" send="false" show_faces="false"  layout="button_count" width="92"  ></fb:like></div><div class='dd_button'><a href="http://twitter.com/share" class="twitter-share-button" data-url="http://lineadecodigo.com/java/formato-a-fechas-en-java-con-dateformat/" data-count="horizontal" data-text="Formato a Fechas en Java con DateFormat" data-via="" ></a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div></div><div style='clear:both'></div></div><div style='clear:both'></div><p>En el dia de hoy les explicare como formatear una fecha en <a href="http://www.manualweb.net/tutorial-java/" title="Tutorial de Java">Java</a>. Lo primero que haremos será usar una de las clases de el <a href="http://www.w3api.com/wiki/Categor%C3%ADa:Java_Text" title="Paquete java.text">paquete java.text</a>. Esta clase es DateFormat. De igual manera utilizaremos la clase <a href="http://www.w3api.com/wiki/Java:Date" title="Clase Java Date">Date</a> y <a href="http://www.w3api.com/wiki/Java:Locale" title="Clase Locale de Java">Locale</a> del <a href="http://www.w3api.com/wiki/Categor%C3%ADa:Java_Util" title="Paquete java.util">paquete java.util</a>.</p>
<p>Un detalle de la clase <a href="http://www.w3api.com/wiki/Java:DateFormat" title="Clase DateFormat de Java">DateFormat</a> de <a href="http://www.manualweb.net/tutorial-java/" title="Tutorial de Java">Java</a> es que es abstracta por lo cual usaremos metodos estaticos para que nos devuelvan una instancia de la clase. en caso de usar el codigo les recuerdo realizar los import de las clases necesarias</p>
<p>Lo primero crearemos una instancia de la clase <a href="http://www.w3api.com/wiki/Java:Date" title="Clase Java Date">Date</a>:</p>
<pre class="java" style="font-family:monospace;"><a href="http://w3api.com/wiki/Java:Date"><span style="color: #aaaadd; font-weight: bold;">Date</span></a> date = <span style="color: #000000; font-weight: bold;">new</span> <a href="http://w3api.com/wiki/Java:Date"><span style="color: #aaaadd; font-weight: bold;">Date</span></a><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span></pre>
<p>Crearemos una instancia de la clase <a href="http://www.w3api.com/wiki/Java:Locale" title="Clase Locale de Java">Locale</a>. Como ven ingrese parametros al constructor los cuales especifican el lenguaje y pais respectivamente. Ingrese al constructor parametros para que muestre la fecha en Brasil (pt,BR).</p>
<pre class="java" style="font-family:monospace;"><a href="http://w3api.com/wiki/Java:Locale"><span style="color: #aaaadd; font-weight: bold;">Locale</span></a> locBR = <span style="color: #000000; font-weight: bold;">new</span> <a href="http://w3api.com/wiki/Java:Locale"><span style="color: #aaaadd; font-weight: bold;">Locale</span></a><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;pt&quot;</span>,<span style="color: #ff0000;">&quot;BR&quot;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span></pre>
<p>Ahora creamos un array de <a href="http://www.w3api.com/wiki/Java:DateFormat" title="Clase DateFormat de Java">DateFormat</a>.</p>
<pre class="java" style="font-family:monospace;"><a href="http://w3api.com/wiki/Java:DateFormat"><span style="color: #aaaadd; font-weight: bold;">DateFormat</span></a><span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#93;</span>df = <span style="color: #000000; font-weight: bold;">new</span> <a href="http://w3api.com/wiki/Java:DateFormat"><span style="color: #aaaadd; font-weight: bold;">DateFormat</span></a><span style="color: #66cc66;">&#91;</span><span style="color: #cc66cc;">4</span><span style="color: #66cc66;">&#93;</span><span style="color: #66cc66;">;</span></pre>
<p>A cada una de las posiciones le damos una instancia de <a href="http://www.w3api.com/wiki/Java:DateFormat" title="Clase DateFormat de Java">DateFormat</a>. El metodo <a href="http://www.w3api.com/wiki/Java:DateFormat.getDateInstance()" title="Método getDateInstance de Java">getDateInstance</a> regresa una instancia:</p>
<pre class="java" style="font-family:monospace;">df<span style="color: #66cc66;">&#91;</span><span style="color: #cc66cc;">0</span><span style="color: #66cc66;">&#93;</span>= <a href="http://w3api.com/wiki/Java:DateFormat"><span style="color: #aaaadd; font-weight: bold;">DateFormat</span></a>.<span style="color: #006600;">getDateInstance</span><span style="color: #66cc66;">&#40;</span><a href="http://w3api.com/wiki/Java:DateFormat"><span style="color: #aaaadd; font-weight: bold;">DateFormat</span></a>.<span style="color: #006600;">MEDIUM</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
df<span style="color: #66cc66;">&#91;</span><span style="color: #cc66cc;">1</span><span style="color: #66cc66;">&#93;</span>= <a href="http://w3api.com/wiki/Java:DateFormat"><span style="color: #aaaadd; font-weight: bold;">DateFormat</span></a>.<span style="color: #006600;">getDateInstance</span><span style="color: #66cc66;">&#40;</span><a href="http://w3api.com/wiki/Java:DateFormat"><span style="color: #aaaadd; font-weight: bold;">DateFormat</span></a>.<span style="color: #006600;">LONG</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
df<span style="color: #66cc66;">&#91;</span><span style="color: #cc66cc;">2</span><span style="color: #66cc66;">&#93;</span>= <a href="http://w3api.com/wiki/Java:DateFormat"><span style="color: #aaaadd; font-weight: bold;">DateFormat</span></a>.<span style="color: #006600;">getDateInstance</span><span style="color: #66cc66;">&#40;</span><a href="http://w3api.com/wiki/Java:DateFormat"><span style="color: #aaaadd; font-weight: bold;">DateFormat</span></a>.<span style="color: #006600;">SHORT</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
df<span style="color: #66cc66;">&#91;</span><span style="color: #cc66cc;">3</span><span style="color: #66cc66;">&#93;</span>= <a href="http://w3api.com/wiki/Java:DateFormat"><span style="color: #aaaadd; font-weight: bold;">DateFormat</span></a>.<span style="color: #006600;">getDateInstance</span><span style="color: #66cc66;">&#40;</span><a href="http://w3api.com/wiki/Java:DateFormat"><span style="color: #aaaadd; font-weight: bold;">DateFormat</span></a>.<span style="color: #006600;">LONG</span>, locBR <span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span></pre>
<p>A cada una de las instancias le pasamos constantes, de cualquier forma, <a href="http://docs.oracle.com/javase/1.4.2/docs/api/java/text/DateFormat.html" title="Constantes de DateFormat">hay mas constantes las cuales podrias revisar en el API y hacer prueba</a>. A la última de las instancias le pasamos el locale para que me de formato en el país.</p>
<blockquote><p>Recordar que como <a href="http://www.w3api.com/wiki/Java:DateFormat" title="Clase DateFormat de Java">DateFormat</a> es abstracta no podemos hacer esto new DateFormat().</p></blockquote>
<p>Por último hacemos un loop para iterar sobre el array y damos el formato a la fecha que habiamos creado arriba</p>
<pre class="java" style="font-family:monospace;"><span style="color: #b1b100;">for</span><span style="color: #66cc66;">&#40;</span><a href="http://w3api.com/wiki/Java:DateFormat"><span style="color: #aaaadd; font-weight: bold;">DateFormat</span></a> d : df<span style="color: #66cc66;">&#41;</span>
  <a href="http://w3api.com/wiki/Java:System"><span style="color: #aaaadd; font-weight: bold;">System</span></a>.<span style="color: #006600;">out</span>.<span style="color: #006600;">println</span><span style="color: #66cc66;">&#40;</span>d.<span style="color: #006600;">format</span><span style="color: #66cc66;">&#40;</span>date<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span></pre>
<p><strong>Similar Posts:</strong>
<ul class="similar-posts">
<li><a href="http://lineadecodigo.com/java/obtener-la-fecha-en-un-jsp/" rel="bookmark" title="Enero 16, 2008">Obtener la fecha en un JSP</a></li>
<li><a href="http://lineadecodigo.com/java/obtener-fecha-de-modificacion-de-un-fichero-con-java/" rel="bookmark" title="Enero 19, 2012">Obtener fecha de modificación de un fichero con Java</a></li>
<li><a href="http://lineadecodigo.com/java/obtener-fecha-actual-con-java/" rel="bookmark" title="Octubre 16, 2007">Obtener fecha actual con Java</a></li>
<li><a href="http://lineadecodigo.com/javascript/convertir-una-cadena-a-fecha-en-javascript/" rel="bookmark" title="Enero 29, 2012">Convertir una cadena a fecha en Javascript</a></li>
<li><a href="http://lineadecodigo.com/vbscript/fecha-en-castellano-con-vbscript/" rel="bookmark" title="Enero 18, 2007">Fecha en castellano con VBScript</a></li>
</ul>
<p><!-- Similar Posts took 5.656 ms --></p>
<script type="text/javascript"> jQuery(document).ready(function($) { window.setTimeout('loadGoogle1_3956()',1000); }); </script><script type="text/javascript"> function loadGoogle1_3956(){ jQuery(document).ready(function($) { $('.dd-google1-3956').remove();$.getScript('https://apis.google.com/js/plusone.js'); }); }</script><!-- Social Buttons Generated by Digg Digg plugin v5.2.6,
    Author : Buffer, Inc
    Website : http://bufferapp.com/diggdigg -->]]></content:encoded>
			<wfw:commentRss>http://lineadecodigo.com/java/formato-a-fechas-en-java-con-dateformat/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Invertir Array</title>
		<link>http://lineadecodigo.com/java/invertir-array/</link>
		<comments>http://lineadecodigo.com/java/invertir-array/#comments</comments>
		<pubDate>Wed, 07 Mar 2012 07:00:56 +0000</pubDate>
		<dc:creator>Pablo Ruiz</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[array]]></category>
		<category><![CDATA[invertir]]></category>
		<category><![CDATA[length]]></category>
		<category><![CDATA[OBJECT]]></category>

		<guid isPermaLink="false">http://lineadecodigo.com/?p=2948</guid>
		<description><![CDATA[Hoy les explicaré un método en Java que hice para invertir arrays simples. En él haremos lo siguiente Clase llamada InvertirArray Declararemos un array de tipo Object llamado invertir_int Un método llamado invertir(Object[] arg0) Un método que nos devolverá el arreglo invertido llamado getArreglo_invertido() Y el Main para probar La definición de la clase Java [...]]]></description>
			<content:encoded><![CDATA[<div class='dd_post_share'><div class='dd_buttons'><div class='dd_button'><div class='dd-google1-ajax-load dd-google1-2948'></div><g:plusone size='medium' href='http://lineadecodigo.com/java/invertir-array/'></g:plusone></div><div class='dd_button'><script src="http://connect.facebook.net/en_US/all.js#xfbml=1"></script><fb:like href="http%3A%2F%2Flineadecodigo.com%2Fjava%2Finvertir-array%2F" send="false" show_faces="false"  layout="button_count" width="92"  ></fb:like></div><div class='dd_button'><a href="http://twitter.com/share" class="twitter-share-button" data-url="http://lineadecodigo.com/java/invertir-array/" data-count="horizontal" data-text="Invertir Array" data-via="" ></a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div></div><div style='clear:both'></div></div><div style='clear:both'></div><p>Hoy les explicaré un método en <a href="http://www.manualweb.net/tutorial-java/" title="Tutorial de Java">Java</a> que hice para invertir arrays simples.</p>
<p>En él haremos lo siguiente</p>
<ol>
<li>Clase llamada InvertirArray</li>
<li>Declararemos un array de tipo Object llamado invertir_int</li>
<li>Un método llamado invertir(Object[] arg0)</li>
<li>Un método que nos devolverá el arreglo invertido llamado getArreglo_invertido()</li>
<li>Y el Main para probar</li>
</ol>
<p>La definición de la clase <a href="http://www.manualweb.net/tutorial-java/" title="Tutorial de Java">Java</a> queda así:</p>
<pre class="java" style="font-family:monospace;"> <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">class</span> InvertirArray <span style="color: #66cc66;">&#123;</span><span style="color: #66cc66;">&#125;</span></pre>
<p>Ya sabes que dentro de las llaves haremos todo lo demas.</p>
<p>Seguimos con la declaración del array de tipo <a href="http://www.w3api.com/wiki/Java:Object" title="Clase Object de Java">Object</a>. Este array nos servirá para invertir el array inicial.</p>
<pre class="java" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">private</span> <span style="color: #000000; font-weight: bold;">static</span> <a href="http://w3api.com/wiki/Java:Object"><span style="color: #aaaadd; font-weight: bold;">Object</span></a><span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#93;</span> invertir_int<span style="color: #66cc66;">;</span></pre>
<p>Luego construimos el método que invertirá el array:</p>
<pre class="java" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #993333;">void</span> invertir<span style="color: #66cc66;">&#40;</span><a href="http://w3api.com/wiki/Java:Object"><span style="color: #aaaadd; font-weight: bold;">Object</span></a><span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#93;</span> array<span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span>
        invertir_int = <span style="color: #000000; font-weight: bold;">new</span> <a href="http://w3api.com/wiki/Java:Object"><span style="color: #aaaadd; font-weight: bold;">Object</span></a><span style="color: #66cc66;">&#91;</span>array.<span style="color: #006600;">length</span><span style="color: #66cc66;">&#93;</span><span style="color: #66cc66;">;</span>
        <span style="color: #993333;">int</span> maximo = array.<span style="color: #006600;">length</span><span style="color: #66cc66;">;</span>
&nbsp;
        <span style="color: #b1b100;">for</span> <span style="color: #66cc66;">&#40;</span><span style="color: #993333;">int</span> i = <span style="color: #cc66cc;">0</span><span style="color: #66cc66;">;</span> i<span style="color: #66cc66;">&lt;</span>array.<span style="color: #006600;">length</span><span style="color: #66cc66;">;</span> i++<span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span>
            invertir_int<span style="color: #66cc66;">&#91;</span>maximo - <span style="color: #cc66cc;">1</span><span style="color: #66cc66;">&#93;</span> = array<span style="color: #66cc66;">&#91;</span>i<span style="color: #66cc66;">&#93;</span><span style="color: #66cc66;">;</span>
            maximo--<span style="color: #66cc66;">;</span>
        <span style="color: #66cc66;">&#125;</span>
    <span style="color: #66cc66;">&#125;</span></pre>
<p>Lo que hacemos es instanciar un array con el tamaño del array que hay que invertir y luego recorreremos dicho array de atrás adelante para ir creando el array invertido.</p>
<p>Luego el método que nos devuelve el arreglo</p>
<pre class="java" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> <a href="http://w3api.com/wiki/Java:Object"><span style="color: #aaaadd; font-weight: bold;">Object</span></a><span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#93;</span> getArreglo_invertido<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span>
        <span style="color: #000000; font-weight: bold;">return</span> InvertirArray.<span style="color: #006600;">invertir_int</span><span style="color: #66cc66;">;</span>
    <span style="color: #66cc66;">&#125;</span></pre>
<p>y finalmente una simple forma de usar este método:</p>
<pre class="java" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #993333;">void</span> main<span style="color: #66cc66;">&#40;</span><a href="http://w3api.com/wiki/Java:String"><span style="color: #aaaadd; font-weight: bold;">String</span></a> args<span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#93;</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span>
&nbsp;
        <a href="http://w3api.com/wiki/Java:Object"><span style="color: #aaaadd; font-weight: bold;">Object</span></a><span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#93;</span> arreglo = <span style="color: #000000; font-weight: bold;">new</span> <a href="http://w3api.com/wiki/Java:Object"><span style="color: #aaaadd; font-weight: bold;">Object</span></a><span style="color: #66cc66;">&#91;</span><span style="color: #cc66cc;">5</span><span style="color: #66cc66;">&#93;</span><span style="color: #66cc66;">;</span>
&nbsp;
        arreglo<span style="color: #66cc66;">&#91;</span><span style="color: #cc66cc;">0</span><span style="color: #66cc66;">&#93;</span> = <span style="color: #cc66cc;">0</span><span style="color: #66cc66;">;</span>
        arreglo<span style="color: #66cc66;">&#91;</span><span style="color: #cc66cc;">1</span><span style="color: #66cc66;">&#93;</span> = <span style="color: #cc66cc;">1</span><span style="color: #66cc66;">;</span>
        arreglo<span style="color: #66cc66;">&#91;</span><span style="color: #cc66cc;">2</span><span style="color: #66cc66;">&#93;</span> = <span style="color: #cc66cc;">2</span><span style="color: #66cc66;">;</span>
        arreglo<span style="color: #66cc66;">&#91;</span><span style="color: #cc66cc;">3</span><span style="color: #66cc66;">&#93;</span> = <span style="color: #cc66cc;">3</span><span style="color: #66cc66;">;</span>
        arreglo<span style="color: #66cc66;">&#91;</span><span style="color: #cc66cc;">4</span><span style="color: #66cc66;">&#93;</span> = <span style="color: #cc66cc;">4</span><span style="color: #66cc66;">;</span>
&nbsp;
        <span style="color: #b1b100;">for</span> <span style="color: #66cc66;">&#40;</span><span style="color: #993333;">int</span> i = <span style="color: #cc66cc;">0</span><span style="color: #66cc66;">;</span> i <span style="color: #66cc66;">&amp;</span>lt<span style="color: #66cc66;">;</span> arreglo.<span style="color: #006600;">length</span><span style="color: #66cc66;">;</span> i++<span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span>
            <a href="http://w3api.com/wiki/Java:Object"><span style="color: #aaaadd; font-weight: bold;">Object</span></a> j = arreglo<span style="color: #66cc66;">&#91;</span>i<span style="color: #66cc66;">&#93;</span><span style="color: #66cc66;">;</span>
            <a href="http://w3api.com/wiki/Java:System"><span style="color: #aaaadd; font-weight: bold;">System</span></a>.<span style="color: #006600;">out</span>.<span style="color: #006600;">println</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;Arreglo Normal: &quot;</span> + j<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
        <span style="color: #66cc66;">&#125;</span>
&nbsp;
        <span style="color: #000000; font-weight: bold;">try</span> <span style="color: #66cc66;">&#123;</span>
            invertir<span style="color: #66cc66;">&#40;</span>arreglo<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
        <span style="color: #66cc66;">&#125;</span> <span style="color: #000000; font-weight: bold;">catch</span> <span style="color: #66cc66;">&#40;</span><a href="http://w3api.com/wiki/Java:Exception"><span style="color: #aaaadd; font-weight: bold;">Exception</span></a> e<span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span>
            <a href="http://w3api.com/wiki/Java:System"><span style="color: #aaaadd; font-weight: bold;">System</span></a>.<span style="color: #006600;">out</span>.<span style="color: #006600;">println</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;Error: &quot;</span>+e.<span style="color: #006600;">getMessage</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
        <span style="color: #66cc66;">&#125;</span>
&nbsp;
        <span style="color: #b1b100;">for</span> <span style="color: #66cc66;">&#40;</span><span style="color: #993333;">int</span> i = <span style="color: #cc66cc;">0</span><span style="color: #66cc66;">;</span> i <span style="color: #66cc66;">&amp;</span>lt<span style="color: #66cc66;">;</span> invertir_int.<span style="color: #006600;">length</span><span style="color: #66cc66;">;</span> i++<span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span>
            <a href="http://w3api.com/wiki/Java:Object"><span style="color: #aaaadd; font-weight: bold;">Object</span></a> j = invertir_int<span style="color: #66cc66;">&#91;</span>i<span style="color: #66cc66;">&#93;</span><span style="color: #66cc66;">;</span>
            <a href="http://w3api.com/wiki/Java:System"><span style="color: #aaaadd; font-weight: bold;">System</span></a>.<span style="color: #006600;">out</span>.<span style="color: #006600;">println</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;Arreglo invertido: &quot;</span> + j<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
        <span style="color: #66cc66;">&#125;</span>
    <span style="color: #66cc66;">&#125;</span></pre>
<p><strong>Similar Posts:</strong>
<ul class="similar-posts">
<li><a href="http://lineadecodigo.com/java/validador-de-rut-en-java/" rel="bookmark" title="Diciembre 9, 2010">Validador de RUT en Java</a></li>
<li><a href="http://lineadecodigo.com/dotnet/simple-navegador-web-en-c-framework-2-0/" rel="bookmark" title="Mayo 5, 2010">Simple navegador web en C# Framework 2.0</a></li>
<li><a href="http://lineadecodigo.com/java/constantes-en-java/" rel="bookmark" title="Marzo 2, 2011">Constantes en Java</a></li>
<li><a href="http://lineadecodigo.com/java/la-conjetura-capicua-con-java/" rel="bookmark" title="Junio 23, 2009">La conjetura capicua con Java</a></li>
<li><a href="http://lineadecodigo.com/java/hola-mundo-en-java/" rel="bookmark" title="Marzo 31, 2007">Hola Mundo en Java</a></li>
</ul>
<p><!-- Similar Posts took 7.956 ms --></p>
<script type="text/javascript"> jQuery(document).ready(function($) { window.setTimeout('loadGoogle1_2948()',1000); }); </script><script type="text/javascript"> function loadGoogle1_2948(){ jQuery(document).ready(function($) { $('.dd-google1-2948').remove();$.getScript('https://apis.google.com/js/plusone.js'); }); }</script><!-- Social Buttons Generated by Digg Digg plugin v5.2.6,
    Author : Buffer, Inc
    Website : http://bufferapp.com/diggdigg -->]]></content:encoded>
			<wfw:commentRss>http://lineadecodigo.com/java/invertir-array/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Crear la ruta de un fichero con Java</title>
		<link>http://lineadecodigo.com/java/crear-la-ruta-de-un-fichero-con-java/</link>
		<comments>http://lineadecodigo.com/java/crear-la-ruta-de-un-fichero-con-java/#comments</comments>
		<pubDate>Sat, 25 Feb 2012 18:10:01 +0000</pubDate>
		<dc:creator>Víctor Cuervo</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[File]]></category>
		<category><![CDATA[file.separator]]></category>
		<category><![CDATA[getProperty]]></category>
		<category><![CDATA[Java 5]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[os.name]]></category>
		<category><![CDATA[separator]]></category>
		<category><![CDATA[System]]></category>
		<category><![CDATA[windows]]></category>

		<guid isPermaLink="false">http://lineadecodigo.com/?p=3900</guid>
		<description><![CDATA[Hoy un artículo sencillo pero de mucha utilidad. Como bien sabéis, dependiendo del sistema operativo que estemos utilizando en Java, las rutas de los ficheros (llamados path) se crean de diferente forma. Así cuando creemos una ruta para un sistema operativo Windows pondremos: c:\midirectorio\mifichero.txt Mientras que si estamos en un sistema Linux utilizaremos: /midirectorio/mifichero.txt Es [...]]]></description>
			<content:encoded><![CDATA[<div class='dd_post_share'><div class='dd_buttons'><div class='dd_button'><div class='dd-google1-ajax-load dd-google1-3900'></div><g:plusone size='medium' href='http://lineadecodigo.com/java/crear-la-ruta-de-un-fichero-con-java/'></g:plusone></div><div class='dd_button'><script src="http://connect.facebook.net/en_US/all.js#xfbml=1"></script><fb:like href="http%3A%2F%2Flineadecodigo.com%2Fjava%2Fcrear-la-ruta-de-un-fichero-con-java%2F" send="false" show_faces="false"  layout="button_count" width="92"  ></fb:like></div><div class='dd_button'><a href="http://twitter.com/share" class="twitter-share-button" data-url="http://lineadecodigo.com/java/crear-la-ruta-de-un-fichero-con-java/" data-count="horizontal" data-text="Crear la ruta de un fichero con Java" data-via="" ></a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></div></div><div style='clear:both'></div></div><div style='clear:both'></div><p>Hoy un artículo sencillo pero de mucha utilidad. Como bien sabéis, dependiendo del sistema operativo que estemos utilizando en <a href="http://www.manualweb.net/tutorial-java/" title="Tutorial de Java">Java</a>, las rutas de los ficheros (llamados path) se crean de diferente forma.</p>
<p>Así cuando creemos una ruta para un sistema operativo Windows pondremos:</p>
<pre>c:\midirectorio\mifichero.txt</pre>
<p>Mientras que si estamos en un sistema Linux utilizaremos:</p>
<pre>/midirectorio/mifichero.txt</pre>
<p>Es por ello que tenemos que tener especial cuidado en construir la ruta del fichero en nuestro programa <a href="http://www.manualweb.net/tutorial-java/" title="Tutorial de Java">Java</a>. Para poder resolver esto tenemos varias alternativas. La primera sería chequeando las propiedades del sistema "os.name" y "file.separator" con <a href="http://www.w3api.com/wiki/Java:System.getProperty()" title="getProperty metodo de la clase System de Java">.getProperty()</a>.</p>
<pre class="java" style="font-family:monospace;"><a href="http://w3api.com/wiki/Java:String"><span style="color: #aaaadd; font-weight: bold;">String</span></a> so = <a href="http://w3api.com/wiki/Java:System"><span style="color: #aaaadd; font-weight: bold;">System</span></a>.<span style="color: #006600;">getProperty</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;os.name&quot;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
<a href="http://w3api.com/wiki/Java:String"><span style="color: #aaaadd; font-weight: bold;">String</span></a> separador = <a href="http://w3api.com/wiki/Java:System"><span style="color: #aaaadd; font-weight: bold;">System</span></a>.<span style="color: #006600;">getProperty</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;file.separator&quot;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span></pre>
<p>En el caso de "os.name" obtenemos el nombre del sistema operativo y en el caso de "file.separator" obtenemos el separador de directorios. Así, montar nuestra ruta de un fichero sería:</p>
<pre class="java" style="font-family:monospace;">sPath = separador + sDirectorio + separador + sFichero<span style="color: #66cc66;">;</span>
<a href="http://w3api.com/wiki/Java:System"><span style="color: #aaaadd; font-weight: bold;">System</span></a>.<span style="color: #006600;">out</span>.<span style="color: #006600;">println</span><span style="color: #66cc66;">&#40;</span>sPath<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span></pre>
<p>Pero, si no queremos consultar las propiedades del sistema, tenemos la constante <a href="http://www.w3api.com/wiki/Java:File.separator" title="Campo separator de la clase File de Java">File.separator</a>. La cual tiene almacenado el separador de directorios del sistema operativo sobre el que nos ejecutemos. De esta forma construir la ruta de un fichero se haría de la siguiente manera:</p>
<pre class="java" style="font-family:monospace;"><a href="http://w3api.com/wiki/Java:String"><span style="color: #aaaadd; font-weight: bold;">String</span></a> sPath = <a href="http://w3api.com/wiki/Java:File"><span style="color: #aaaadd; font-weight: bold;">File</span></a>.<span style="color: #006600;">separator</span> + sDirectorio + <a href="http://w3api.com/wiki/Java:File"><span style="color: #aaaadd; font-weight: bold;">File</span></a>.<span style="color: #006600;">separator</span> + sFichero<span style="color: #66cc66;">;</span>
<a href="http://w3api.com/wiki/Java:System"><span style="color: #aaaadd; font-weight: bold;">System</span></a>.<span style="color: #006600;">out</span>.<span style="color: #006600;">println</span><span style="color: #66cc66;">&#40;</span>sPath<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span></pre>
<blockquote><p>Hay que tener un poco de cuidado con la versión de <a href="http://www.manualweb.net/tutorial-java/" title="Tutorial de Java">Java</a> que utilices, ya que <a href="http://www.w3api.com/wiki/Java:File.separator" title="Campo separator de la clase File de Java">File.separator</a> solo está disponible desde Java 5.</p></blockquote>
<p>¿Cual de las dos formas utilizarías? ¿Conoces alguna más?<strong>Similar Posts:</strong>
<ul class="similar-posts">
<li><a href="http://lineadecodigo.com/java/separador-de-directorios-en-java/" rel="bookmark" title="Noviembre 20, 2010">Separador de directorios en Java</a></li>
<li><a href="http://lineadecodigo.com/java/obtener-ruta-absoluta-de-un-fichero/" rel="bookmark" title="Noviembre 23, 2006">Obtener ruta absoluta de un fichero</a></li>
<li><a href="http://lineadecodigo.com/java/vaciar-el-contenido-de-un-fichero-mediante-borrado-y-creacion/" rel="bookmark" title="Agosto 1, 2010">Vaciar el contenido de un fichero mediante borrado y creación</a></li>
<li><a href="http://lineadecodigo.com/java/conocer-el-tamano-de-un-fichero-con-java/" rel="bookmark" title="Julio 7, 2007">Conocer el tamaño de un fichero con Java</a></li>
<li><a href="http://lineadecodigo.com/java/borrar-un-directorio-con-java/" rel="bookmark" title="Diciembre 28, 2008">Borrar un directorio con Java</a></li>
</ul>
<p><!-- Similar Posts took 5.059 ms --></p>
<script type="text/javascript"> jQuery(document).ready(function($) { window.setTimeout('loadGoogle1_3900()',1000); }); </script><script type="text/javascript"> function loadGoogle1_3900(){ jQuery(document).ready(function($) { $('.dd-google1-3900').remove();$.getScript('https://apis.google.com/js/plusone.js'); }); }</script><!-- Social Buttons Generated by Digg Digg plugin v5.2.6,
    Author : Buffer, Inc
    Website : http://bufferapp.com/diggdigg -->]]></content:encoded>
			<wfw:commentRss>http://lineadecodigo.com/java/crear-la-ruta-de-un-fichero-con-java/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

<!-- Served from: lineadecodigo.com @ 2012-05-23 04:29:26 by W3 Total Cache -->
