Caracteres de Dos Bytes

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 3

Caracteres de dos bytes.

J→ 1 1 0 bits 6-10 K→ 1 0 bits 0-5


Este tipo de carácter puede detectarse viendo que el primer bit del byte menos
significativo está a uno “1” y el segundo bit a cero “0”, lo cual significará que el
siguiente byte contiene parte del código del carácter. Se detecta que consta de
sólo dos bytes y no 3 porque en el segundo byte, el primer cero se encuentra en la
tercera posición empezando por la izquierda.
Los caracteres representados por dos bytes son los comprendidos en el rango
‘\u0080’ … ‘\u07ff’, y el carácter nulo (‘\u0000’).
El formato de Strings UTF-8.
336
Puede obtenerse el código del carácter que representan mediante la operación:
códigoCarácter = ((J&0x1f)<<6)+(K&0x3f)
F.3 Caracteres de tres bytes.
J→ 1 1 1 0 bits 12-15 K→ 1 0 bits 6-11 L→ 1 0 bits 0-5
Se detecta un carácter de tres bytes, una vez detectado que tiene más de un byte,
comprobando la posición del primer cero por la izquierda en el segundo byte (está
en la segunda).
Los caracteres representados por dos bytes son los comprendidos en el rango
‘\u0800’ … ‘\uffff’.
Puede obtenerse el código del carácter que representan mediante la operación:
códigoCarácter = ((J&0xf)<<12)+((K&0x3f)<<6)+(L&0x3f)
337
G. CLASES EN JAVA.NET.
El paquete java.net contiene las clases que soportan la comunicación en Java
mediante la implementación de la interface de sockets de UNIX. Realmente se
trata de una versión adaptada y simplificada. Seguidamente se pasará revista a las
clases implicadas, sus constructores y métodos.
Se puede encontrar una documentación más actualizada (en inglés) en la
documentación del JDK.
G.1 Class Socket
public final class java.net.Socket extends java.lang.Object {
// Constructores
public Socket(InetAddress address, int port);
public Socket(InetAddress address, int port, boolean stream);
public Socket(String host, int port);
public Socket(String host, int port, boolean stream);
// Métodos
public void close();
public InetAddress getInetAddress();
public InputStream getInputStream();
public int getLocalPort();
public OutputStream getOutputStream();
public int getPort();
public static void setSocketImplFactory(SocketImplFactory fac);
public String toString();
}
Clases en java.net.
338
Esta clase implementa sockets clientes (también llamados simplemente
“sockets”). Un socket es un extremo de una comunicación entre dos máquinas.
El trabajo real del socket es desarrollado por una instancia de la clase
SocketImpl. Una aplicación, cambiando la compañía del socket que crea la
implementación del socket, puede configurarse para crear sockets apropiados al
cortafuegos local.
G.1.1 CONSTRUCTORES:
public Socket(InetAddress address, int port) throws IOException;
Crea un stream socket y lo conecta al número de Port y la dirección IP
especificada.
Si la aplicación ha especificado una compañía de socket, el método
createSocketImpl() de esa compañía es llamado para crear la
implementación del socket. De lo contrario se crea un socket simple.
Parámetros:
address - la dirección IP
port - el número de puerto
Throws:
IOException
Si ocurre un error de E/S durante la creación del socket.
public Socket(InetAddress address, int port, boolean stream) throws
IOException;
Crea un stream socket y lo conecta al número de Port y la dirección IP
especificada.
Si el parámetro stream es true, se crea un stream socket.
IOException
Clases sobre streams y ficheros.
333
public final void WriteLong(long x) throws IOException
public final void WriteShort(int x) throws IOException
Todos estos métodos escriben en el fichero un tipo distinto de dato. Todos
ellos pueden generar el mismo tipo de excepción:
Throws IOException si ocurre un error de E/S.
public final void writeUTF(String str) throws IOException;
Escribe en el fichero un String codificado de la siguiente forma: en
primer lugar se escriben dos bytes como si se tratara del método
writeShort(); a continuación se codifican los caracteres del String
uno a uno y en secuencia en el formato UTF-8 ( Véase F. El formato de
Strings UTF-8. en la página 335).
Throws IOException si ocurre un error de E/S.

335
F. EL FORMATO DE STRINGS UTF-8.
El formato utilizado por la máquina virtual Java (JVM Java Virtual Machine)
internamente para representar cadenas de caracteres (Strings) es una pequeña
variación de la codificación UTF-8. Ésta permite la codificación de los caracteres
coincidentes con el código ASCII mediante un solo byte, y a la vez, permitir la
codificación de caracteres utilizando hasta 16 bits.
F.1 Caracteres de un solo byte.
0 bits 0-6
Este tipo de carácter del String se detecta porque tiene el bit de mayor orden del
byte a cero. Los 7 bits menos significativos codifican el carácter representado.
Los caracteres representados por un solo byte son los comprendidos en el rango
‘\u0001’ … ‘\u007f’, que se corresponden con los pertenecientes al código
ASCII de 7 bits:
ı"#$%&'()*+,-
./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`ab
cdefghijklmnopqrstuvwxyz{|}~•

También podría gustarte