[][src]Function oem_cp::decode_string_incomplete_table_lossy

pub fn decode_string_incomplete_table_lossy<'a, T: Into<Cow<'a, [u8]>>>(
    src: T,
    decoding_table: &[Option<char>; 128]
) -> String

Decode SBCS (single byte character set) bytes (with undefined codepoints)

Undefined codepoints are replaced with U+FFFD (replacement character).

Arguments

  • src - bytes encoded in SBCS
  • decoding_table - table for decoding SBCS (with undefined codepoints)

Examples

use oem_cp::decode_string_incomplete_table_lossy;
use oem_cp::code_table::DECODING_TABLE_CP874;

// means shrimp in Thai (U+E49 => 0xE9)
assert_eq!(&decode_string_incomplete_table_lossy(vec![0xA1, 0xD8, 0xE9, 0xA7], &DECODING_TABLE_CP874), "กุ้ง");
// 0xDB-0xDE,0xFC-0xFF is invalid in CP874 in Windows
assert_eq!(&decode_string_incomplete_table_lossy(vec![0x30, 0xDB], &DECODING_TABLE_CP874), "0\u{FFFD}");