Использование PowerShell для записи файла в UTF-8 без спецификации
е знаем, что UTF-8 сложно. Я экспортировал свои сообщения из Facebook, и полученный файл JSON экранировал все символы, отличные от ascii, в кодовые точки Unicode.
Я ищу простой способ убрать эти юникод-коды в обычный старый UTF-8. Я также хотел бы использовать PowerShell.
Я пытался
$str = "\u00f0\u009f\u0091\u008d"
[Regex]::Replace($str, "\\[Uu]([0-9A-Fa-f]{4})", `
{[char]::ToString([Convert]::ToInt32($args[0].Groups[1].Value, 16))} )
но это только дает мнеð в результате нет.
Я также попытался использовать Notepad ++, и я нашел этот пост:Как конвертировать экранированный Unicode (например,\u0432\u0441\u0435
) в UTF-8 символов (все) в Notepad ++, Принятый ответ также приводит к тому же результату, что и в примере выше:ð.
Я нашел решение для декодирования здесь:Библиотека UTF8.js который отлично декодирует текст, и вы можетепопробуйте это здесь (с участием\u00f0\u009f\u0091\u008d
как вход).
Есть ли способ в PowerShell для декодирования\u00f0\u009f\u0091\u008d
получать ? Я бы хотел, чтобы в моих экспортированных сообщениях на Facebook были настоящие UTF-8, чтобы я мог их прочитать.
Бонусные баллы за помощь в понимании того, что\u00f0\u009f\u0091\u008d
на самом деле представляет (помимо того, что этонекоторое шестнадцатеричное представление UTF-8). Почему это так же, какU+1F44D
или же\uD83D\uDC4D
в С ++?