Поделиться через


Text.FromBinary

Синтаксис

Text.FromBinary(binary as nullable binary, optional encoding as nullable number) as nullable text

О нас

Декодирует данные из двоичного значения в текстовое значение с помощью указанного типа кодирования.

  • binary: двоичные данные, которые необходимо декодировать.
  • encoding: (Необязательно) Кодировка, используемая для преобразования двоичного файла в текст. Используется BinaryEncoding.Type для указания типа кодирования. Если это значение не указано, значение по умолчанию равно BinaryEncoding.Utf8.

Пример 1

Кодируйте текст в двоичный файл, создайте просматриваемую строку Base64, а затем декодируйте его обратно в текст.

Использование

let
    originalText = "Testing 1-2-3",

    // Default UTF-8 binary
    binaryData = Text.ToBinary(originalText),

    // Convert binary to viewable Base64 string
    encodedText = Binary.ToText(binaryData, BinaryEncoding.Base64),

    // Decode back to text
    decodedText = Text.FromBinary(binaryData),

    result = [
        OriginalText = originalText,
        BinaryBase64 = encodedText,
        DecodedText = decodedText
    ]
in
    result

Выходные данные

[
    OriginalText = "Testing 1-2-3",
    BinaryEncoded = "VGVzdGluZyAxLTItMw==",
    DecodedText = "Testing 1-2-3"
]

Пример 2

Кодируйте текст в двоичный файл с помощью метки порядка байтов (BOM), создайте просматриваемую шестнадцатеричную строку, а затем декодируйте ее обратно в текст.

Использование

let
    originalText = "Testing 1-2-3",

    // Convert to binary with BOM
    binaryData = Text.ToBinary(originalText, TextEncoding.Utf16, true),

    // Show binary as hex to demonstrate presence of BOM (fffe)
    binaryAsHex = Binary.ToText(binaryData, BinaryEncoding.Hex),

    // Decode back to text
    decodedText = Text.FromBinary(binaryData, TextEncoding.Utf16),

    // Compare original text and decoded text
    isIdentical = originalText = decodedText,

    result = [
        OriginalText = originalText,
        BinaryHex = binaryAsHex,
        DecodedText = decodedText,
        IsIdentical = isIdentical
    ]
in
    result

Выходные данные

[
    OriginalText = "Testing 1-2-3", 
    DecodedText = "fffe540065007300740069006e006700200031002d0032002d003300",
    DecodedText = "Testing 1-2-3", 
    IsIdentical = true
]