Lenguaje

Deflater.Deflate Método

Definición

Sobrecargas

Nombre Description
Deflate(ByteBuffer)

Comprime los datos de entrada y rellena el búfer especificado con datos comprimidos.

Deflate(Byte[])

Comprime los datos de entrada y rellena el búfer especificado con datos comprimidos.

Deflate(ByteBuffer, Int32)

Comprime los datos de entrada y rellena el búfer especificado con datos comprimidos.

Deflate(Byte[], Int32, Int32)

Comprime los datos de entrada y rellena el búfer especificado con datos comprimidos.

Deflate(Byte[], Int32, Int32, Int32)

Comprime los datos de entrada y rellena el búfer especificado con datos comprimidos.

Deflate(ByteBuffer)

Comprime los datos de entrada y rellena el búfer especificado con datos comprimidos.

[Android.Runtime.Register("deflate", "(Ljava/nio/ByteBuffer;)I", "GetDeflate_Ljava_nio_ByteBuffer_Handler", ApiSince=35)]
public virtual int Deflate(Java.Nio.ByteBuffer? output);
[<Android.Runtime.Register("deflate", "(Ljava/nio/ByteBuffer;)I", "GetDeflate_Ljava_nio_ByteBuffer_Handler", ApiSince=35)>]
abstract member Deflate : Java.Nio.ByteBuffer -> int
override this.Deflate : Java.Nio.ByteBuffer -> int

Parámetros

output
ByteBuffer

el búfer de los datos comprimidos

Devoluciones

el número real de bytes de datos comprimidos escritos en el búfer de salida

Atributos

Comentarios

Comprime los datos de entrada y rellena el búfer especificado con datos comprimidos. Devuelve el número real de bytes de datos comprimidos. Un valor devuelto de 0 indica que #needsInput() needsInput se debe llamar a para determinar si se requieren más datos de entrada.

Este método usa #NO_FLUSH como modo de vaciado de compresión. Una invocación de este método del formulario deflater.deflate(output) produce el mismo resultado que la invocación de deflater.deflate(output, Deflater.NO_FLUSH).

Agregado en 11.

Java documentación para java.util.zip.Deflater.deflate(java.nio.ByteBuffer).

Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el Android y se usan según los términos descritos en creative Creative Commons 2.5 Attribution License.

Se aplica a

Deflate(Byte[])

Comprime los datos de entrada y rellena el búfer especificado con datos comprimidos.

[Android.Runtime.Register("deflate", "([B)I", "GetDeflate_arrayBHandler")]
public virtual int Deflate(byte[]? output);
[<Android.Runtime.Register("deflate", "([B)I", "GetDeflate_arrayBHandler")>]
abstract member Deflate : byte[] -> int
override this.Deflate : byte[] -> int

Parámetros

output
Byte[]

el búfer de los datos comprimidos

Devoluciones

el número real de bytes de datos comprimidos escritos en el búfer de salida

Atributos

Comentarios

Comprime los datos de entrada y rellena el búfer especificado con datos comprimidos. Devuelve el número real de bytes de datos comprimidos. Un valor devuelto de 0 indica que #needsInput() needsInput se debe llamar a para determinar si se requieren más datos de entrada.

Este método usa #NO_FLUSH como modo de vaciado de compresión. Una invocación de este método del formulario deflater.deflate(b) produce el mismo resultado que la invocación de deflater.deflate(b, 0, b.length, Deflater.NO_FLUSH).

Java documentación para java.util.zip.Deflater.deflate(byte[]).

Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el Android y se usan según los términos descritos en creative Creative Commons 2.5 Attribution License.

Se aplica a

Deflate(ByteBuffer, Int32)

Comprime los datos de entrada y rellena el búfer especificado con datos comprimidos.

[Android.Runtime.Register("deflate", "(Ljava/nio/ByteBuffer;I)I", "GetDeflate_Ljava_nio_ByteBuffer_IHandler", ApiSince=35)]
public virtual int Deflate(Java.Nio.ByteBuffer? output, int flush);
[<Android.Runtime.Register("deflate", "(Ljava/nio/ByteBuffer;I)I", "GetDeflate_Ljava_nio_ByteBuffer_IHandler", ApiSince=35)>]
abstract member Deflate : Java.Nio.ByteBuffer * int -> int
override this.Deflate : Java.Nio.ByteBuffer * int -> int

Parámetros

output
ByteBuffer

el búfer de los datos comprimidos

flush
Int32

modo de vaciado de compresión

Devoluciones

el número real de bytes de datos comprimidos escritos en el búfer de salida

Atributos

Comentarios

Comprime los datos de entrada y rellena el búfer especificado con datos comprimidos. Devuelve el número real de bytes de datos comprimidos.

El modo de vaciado de compresión es uno de los tres modos siguientes:

<ul><li>#NO_FLUSH: permite al deflaador decidir la cantidad de datos que se van a acumular, antes de generar la salida, con el fin de lograr la mejor compresión (debe usarse en el escenario de uso normal). Un valor devuelto de 0 en este modo de vaciado indica que #needsInput() se debe llamar a para determinar si se requieren más datos de entrada.

<li>#SYNC_FLUSH: todas las salidas pendientes en el deflaador se vacían, en el búfer de salida especificado, para que un inflador que funcione en los datos comprimidos pueda obtener todos los datos de entrada disponibles hasta ahora (en particular, el #needsInput() valor devuelve true después de esta invocación si se proporciona suficiente espacio de salida). El vaciado con #SYNC_FLUSH puede degradar la compresión para algunos algoritmos de compresión, por lo que solo se debe usar cuando sea necesario.

<li>#FULL_FLUSH: todas las salidas pendientes se vacían como con #SYNC_FLUSH. El estado de compresión se restablece para que el inflador que funciona en los datos de salida comprimidos pueda reiniciarse desde este punto si se han dañado los datos comprimidos anteriores o si se desea el acceso aleatorio. El uso #FULL_FLUSH de demasiada frecuencia puede degradar seriamente la compresión. </ul>

En el caso de #FULL_FLUSH o #SYNC_FLUSH, si el valor devuelto es igual al espacio restante ByteBuffer#remaining() del búfer, este método se debe invocar de nuevo con el mismo flush parámetro y más espacio de salida. Asegúrese de que el búfer tiene al menos 6 bytes de espacio restante para evitar que el marcador de vaciado (5 bytes) se produzca repetidamente en el búfer de salida cada vez que se invoque este método.

Si se ejecuta correctamente, la posición del búfer de bytes especificado output se avanzará en tantos bytes como se generaron en la operación, que es igual al número devuelto por este método.

Si se llamó al #setInput(ByteBuffer) método para proporcionar un búfer para la entrada, la posición del búfer de entrada será avanzada por el número de bytes consumidos por esta operación.

Agregado en 11.

Java documentación para java.util.zip.Deflater.deflate(java.nio.ByteBuffer, int).

Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el Android y se usan según los términos descritos en creative Creative Commons 2.5 Attribution License.

Se aplica a

Deflate(Byte[], Int32, Int32)

Comprime los datos de entrada y rellena el búfer especificado con datos comprimidos.

[Android.Runtime.Register("deflate", "([BII)I", "GetDeflate_arrayBIIHandler")]
public virtual int Deflate(byte[]? output, int off, int len);
[<Android.Runtime.Register("deflate", "([BII)I", "GetDeflate_arrayBIIHandler")>]
abstract member Deflate : byte[] * int * int -> int
override this.Deflate : byte[] * int * int -> int

Parámetros

output
Byte[]

el búfer de los datos comprimidos

off
Int32

desplazamiento inicial de los datos

len
Int32

el número máximo de bytes de datos comprimidos

Devoluciones

el número real de bytes de datos comprimidos escritos en el búfer de salida

Atributos

Comentarios

Comprime los datos de entrada y rellena el búfer especificado con datos comprimidos. Devuelve el número real de bytes de datos comprimidos. Un valor devuelto de 0 indica que #needsInput() needsInput se debe llamar a para determinar si se requieren más datos de entrada.

Este método usa #NO_FLUSH como modo de vaciado de compresión. Una invocación de este método del formulario deflater.deflate(b, off, len) produce el mismo resultado que la invocación de deflater.deflate(b, off, len, Deflater.NO_FLUSH).

Java documentación para java.util.zip.Deflater.deflate(byte[], int, int).

Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el Android y se usan según los términos descritos en creative Creative Commons 2.5 Attribution License.

Se aplica a

Deflate(Byte[], Int32, Int32, Int32)

Comprime los datos de entrada y rellena el búfer especificado con datos comprimidos.

[Android.Runtime.Register("deflate", "([BIII)I", "GetDeflate_arrayBIIIHandler")]
public virtual int Deflate(byte[]? output, int off, int len, int flush);
[<Android.Runtime.Register("deflate", "([BIII)I", "GetDeflate_arrayBIIIHandler")>]
abstract member Deflate : byte[] * int * int * int -> int
override this.Deflate : byte[] * int * int * int -> int

Parámetros

output
Byte[]

el búfer de los datos comprimidos

off
Int32

desplazamiento inicial de los datos

len
Int32

el número máximo de bytes de datos comprimidos

flush
Int32

modo de vaciado de compresión

Devoluciones

el número real de bytes de datos comprimidos escritos en el búfer de salida

Atributos

Excepciones

si flush no es válido.

Comentarios

Comprime los datos de entrada y rellena el búfer especificado con datos comprimidos. Devuelve el número real de bytes de datos comprimidos.

El modo de vaciado de compresión es uno de los tres modos siguientes:

<ul><li>#NO_FLUSH: permite al deflaador decidir la cantidad de datos que se van a acumular, antes de generar la salida, con el fin de lograr la mejor compresión (debe usarse en el escenario de uso normal). Un valor devuelto de 0 en este modo de vaciado indica que #needsInput() se debe llamar a para determinar si se requieren más datos de entrada.

<li>#SYNC_FLUSH: todas las salidas pendientes en el deflaador se vacían, en el búfer de salida especificado, para que un inflador que funcione en los datos comprimidos pueda obtener todos los datos de entrada disponibles hasta ahora (en particular, el #needsInput() valor devuelve true después de esta invocación si se proporciona suficiente espacio de salida). El vaciado con #SYNC_FLUSH puede degradar la compresión para algunos algoritmos de compresión, por lo que solo se debe usar cuando sea necesario.

<li>#FULL_FLUSH: todas las salidas pendientes se vacían como con #SYNC_FLUSH. El estado de compresión se restablece para que el inflador que funciona en los datos de salida comprimidos pueda reiniciarse desde este punto si se han dañado los datos comprimidos anteriores o si se desea el acceso aleatorio. El uso #FULL_FLUSH de demasiada frecuencia puede degradar seriamente la compresión. </ul>

En el caso de #FULL_FLUSH o #SYNC_FLUSH, si el valor devuelto es len, el espacio disponible en el búfer bde salida , este método se debe invocar de nuevo con el mismo flush parámetro y más espacio de salida. Asegúrese de que es mayor que 6 para evitar que el marcador de vaciado (5 bytes) se produzca repetidamente en el búfer de salida cada vez que len se invoque este método.

Si se llamó al #setInput(ByteBuffer) método para proporcionar un búfer para la entrada, la posición del búfer de entrada será avanzada por el número de bytes consumidos por esta operación.

Agregado en la versión 1.7.

Java documentación para java.util.zip.Deflater.deflate(byte[], int, int, int).

Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el Android y se usan según los términos descritos en creative Creative Commons 2.5 Attribution License.

Se aplica a