diff options
Diffstat (limited to 'std/node/_fs/_fs_appendFile.ts')
-rw-r--r-- | std/node/_fs/_fs_appendFile.ts | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/std/node/_fs/_fs_appendFile.ts b/std/node/_fs/_fs_appendFile.ts index cb51def67..b7fce274f 100644 --- a/std/node/_fs/_fs_appendFile.ts +++ b/std/node/_fs/_fs_appendFile.ts @@ -15,7 +15,7 @@ import { fromFileUrl } from "../path.ts"; */ export function appendFile( pathOrRid: string | number | URL, - data: string, + data: string | Uint8Array, optionsOrCallback: Encodings | WriteFileOptions | CallbackWithError, callback?: CallbackWithError, ): void { @@ -30,7 +30,9 @@ export function appendFile( validateEncoding(options); let rid = -1; - const buffer: Uint8Array = new TextEncoder().encode(data); + const buffer: Uint8Array = data instanceof Uint8Array + ? data + : new TextEncoder().encode(data); new Promise((resolve, reject) => { if (typeof pathOrRid === "number") { rid = pathOrRid; @@ -79,7 +81,7 @@ function closeRidIfNecessary(isPathString: boolean, rid: number): void { */ export function appendFileSync( pathOrRid: string | number | URL, - data: string, + data: string | Uint8Array, options?: Encodings | WriteFileOptions, ): void { let rid = -1; @@ -107,7 +109,9 @@ export function appendFileSync( rid = file.rid; } - const buffer: Uint8Array = new TextEncoder().encode(data); + const buffer: Uint8Array = data instanceof Uint8Array + ? data + : new TextEncoder().encode(data); Deno.writeSync(rid, buffer); } finally { |