Upload via GUI (7543 Dateien)
This commit is contained in:
+19
@@ -0,0 +1,19 @@
|
||||
import { toArrayBuffer } from "../bytes/index.js";
|
||||
export function encode(text, options = {}) {
|
||||
const result = new ArrayBuffer(text.length * 2);
|
||||
const view = new DataView(result);
|
||||
for (let i = 0; i < text.length; i++) {
|
||||
view.setUint16(i * 2, text.charCodeAt(i), options.littleEndian ?? false);
|
||||
}
|
||||
return new Uint8Array(result);
|
||||
}
|
||||
export function decode(data, options = {}) {
|
||||
const buffer = toArrayBuffer(data);
|
||||
const view = new DataView(buffer);
|
||||
let result = "";
|
||||
for (let i = 0; i < buffer.byteLength; i += 2) {
|
||||
result += String.fromCharCode(view.getUint16(i, options.littleEndian ?? false));
|
||||
}
|
||||
return result;
|
||||
}
|
||||
export const utf16 = { encode, decode };
|
||||
Reference in New Issue
Block a user