--- title: BlobBuilder slug: Web/API/BlobBuilder tags: - API - Archivo - DOM - File API - NeedsBrowserCompatibility - Obsoleto - Referencia translation_of: Web/API/BlobBuilder ---

{{APIRef("File API")}}{{ obsolete_header}}

La interfaz BlobBuilder provee una manera fácil de construir objetos {{domxref("Blob")}} . Solo crea un BlobBuilder y anexa trozos de datos invocando  el método {{manch("append")}} . Cuando termines de construir tu objeto, llama al método {{manch("getBlob")}} para obtener un objeto  {{domxref("Blob")}}  que contiene los datos que le enviaste al blob builder.

Nota: La interfaz BlobBuilder ha sido descontinuada en favor de introducir el constructor mas reciente {{domxref('Blob')}}.

Información general de los metodos

void append(in ArrayBuffer data);
void append(in Blob data);
void append(in String data, [optional] in String endings);
Blob getBlob([optional] in DOMString contentType);
File getFile(in DOMString name, [optional] in DOMString contentType);

Metodos

append()

Anexa el contenido del objeto javascript especificado al {{domxref("Blob")}} que esta siendo construido. Si el valor especificado no es  un  {{domxref("Blob")}}, ArrayBuffer, o String, el valor es convertido a String antes de ser anexado al  blob.

void append(
  in ArrayBuffer data
);

void append(
  in Blob data
);


void append(
  in String data,
  [optional] in String endings
);

Parametros

data
Los datos a anexar al objeto {{domxref("Blob")}} que esta siendo construido.
endings
Establece como serán escritas las cadenas que contienen  \n. Puede ser "transparent" (los finales no cambian) o "native" (los finales cambian para coincidir  a conveniencia del sistema operativo anfitrión). El valor predeterminado es "transparent".

getBlob()

Regresa el objeto  {{domxref("Blob")}} que ha sido construido usando los datos pasados atraves del método {{manch("append")}}.

Blob getBlob(
  in DOMString contentType {{optional_inline}}
);

Parametros

contentType {{optional_inline}}
El tipo MIME de los datos que seran regresados en el objeto {{domxref("Blob")}}. Esto será la propiedad tipo (Type) de los objetos Blob.

Valor de Retorno

Un objeto  {{domxref("Blob")}} conteniendo todos los datos pasados por cualquier llamada hecha  al método {{manch("append")}} desde que el  BlobBuilder fue creado. Esto tambien reinicializa el  BlobBuilder sí que la siguiente llamada al metodo {{manch("append")}} es empezar de nuevo , un blob vacio.

getFile() {{non-standard_inline}}

Retorna un objeto {{domxref("File")}}.

File getFile(
  in DOMString name,
  [optional] in DOMString contentType
);

Parametros

name
El nombre del archivo.
contentType {{optional_inline}}
El tipo MIME de dats regresados en el objeto {{domxref("File")}}. Este será el valor de la propiedad tipo (type) del objeto File.

Valor de Retorno

Un Objeto {{domxref("File")}}.

Compatibilidad con Nevegadores

{{CompatibilityTable}}

Característica Chrome Firefox (Gecko) Internet Explorer Opera Safari
Basic support (soporte básico) 8[1] {{CompatNo}}[2] 10[3] {{CompatNo}} {{CompatNo}}[1]
getfile() {{non-standard_inline}} {{CompatNo}} {{CompatNo}} {{CompatNo}} {{CompatNo}} {{CompatNo}}
Característica Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support (soporte básico) 3[1] {{CompatNo}}[2] {{CompatNo}} {{CompatNo}} {{CompatNo}}[1]
getfile() {{non-standard_inline}} {{CompatNo}} {{CompatNo}} {{CompatNo}} {{CompatNo}} {{CompatNo}}

[1] WebKit implementa el API como WebKitBlobBuilder, aunque es obsoleta ahora y ha hecho su soporte configurable. Actualmente Safari deshabilita esta caracteristica  en Nightly, asi que probablemente no venga en la version final. Por otra parte, Chrome, que lo ha soportado desde Chrome 8, mantiene disponible esta caracteristica. Asi que Chrome podrá continuar soportando esta caracteristica. (Visita WebKit changeset para mas detalles).

[2] Gecko implementa el API como MozBlobBuilder. Empezando con Firefox 14, usando MozBlobBuilder mostrará un mensaje de advertencia en la consola de que usar MozBlobBuilder es obsoleto y se sugiere usar el constructor  {{domxref("Blob")}} en su lugar. En Gecko 18.0 esta caracteristica fue removida..

[3] Trident implementa el API como MSBlobBuilder.

Vea también