Я занимаюсь обработкой текстового потока в серии PS1 & PSM1-файлов, и я столкнулся с некоторыми проблемами со смарт-кавычками и em-тире (никогда, НИКОГДА не вырезал и не вставлял код из MS Scripting Guy). Я понял, что проблема была в кодировке, поэтому я посмотрел, и у меня есть файлы обоих ASCII & UTF8, но, конечно, у обоих есть проблемы с моим фанк-текстом. Поэтому я сделал некоторые замены, и у меня это работает, но мне интересно, не следует ли стандартизировать одну кодировку, и если да, то какой?Какая правильная кодировка для файлов PS1
4
A
ответ
1
Не прямой ответ на ваш вопрос, но вы можете найти его полезным, тем не менее, у меня есть инструмент, который я написал для обработки сценариев PS и SQL, но быстро обнаружил, что люди приклеивают их электронные письма, которые прикрутили массу вещей. Я должен был осуществить это, чтобы исправить все это, и он должен получить все:
if ($code.IndexOf([Char]0x2013) -gt -1) { $code = $code.Replace(([Char]0x2013).ToString(), "--") } # en dash
if ($code.IndexOf([Char]0x2014) -gt -1) { $code = $code.Replace(([Char]0x2014).ToString(), "-") } # em dash
if ($code.IndexOf([Char]0x2015) -gt -1) { $code = $code.Replace(([Char]0x2015).ToString(), "-") } # horizontal bar
if ($code.IndexOf([Char]0x2017) -gt -1) { $code = $code.Replace(([Char]0x2017).ToString(), "_") } # double low line
if ($code.IndexOf([Char]0x2018) -gt -1) { $code = $code.Replace(([Char]0x2018).ToString(), "`'") } # left single quotation mark
if ($code.IndexOf([Char]0x2019) -gt -1) { $code = $code.Replace(([Char]0x2019).ToString(), "`'") } # right single quotation mark
if ($code.IndexOf([Char]0x201a) -gt -1) { $code = $code.Replace(([Char]0x201a).ToString(), ",") } # single low-9 quotation mark
if ($code.IndexOf([Char]0x201b) -gt -1) { $code = $code.Replace(([Char]0x201b).ToString(), "`'") } # single high-reversed-9 quotation mark
if ($code.IndexOf([Char]0x201c) -gt -1) { $code = $code.Replace(([Char]0x201c).ToString(), "`"") } # left double quotation mark
if ($code.IndexOf([Char]0x201d) -gt -1) { $code = $code.Replace(([Char]0x201d).ToString(), "`"") } # right double quotation mark
if ($code.IndexOf([Char]0x201e) -gt -1) { $code = $code.Replace(([Char]0x201e).ToString(), "`"") } # double low-9 quotation mark
if ($code.IndexOf([Char]0x2026) -gt -1) { $code = $code.Replace(([Char]0x2026).ToString(), "...") } # horizontal ellipsis
if ($code.IndexOf([Char]0x2032) -gt -1) { $code = $code.Replace(([Char]0x2032).ToString(), "`"") } # prime
if ($code.IndexOf([Char]0x2033) -gt -1) { $code = $code.Replace(([Char]0x2033).ToString(), "`"") } # double prime
if ($code.IndexOf([Char]0x0009) -gt -1) { $code = $code.Replace(([Char]0x0009).ToString(), " ") } # tab
+0
О, это хороший материал! – Gordon
Смежные вопросы
- 1. Какая правильная кодировка для Indy Tidhttp для публикации XML-файлов?
- 2. Какая правильная кодировка для типа SNMP Unsigned32?
- 3. Правильная кодировка для |
- 4. Какая кодировка необходима для файлов cookie?
- 5. Какова правильная кодировка HTTP-запросов?
- 6. Какая кодировка?
- 7. PS1 правильная обертка строки в Bash
- 8. Какая правильная замена для PostEvent
- 9. Какая минимальная кодировка для URL?
- 10. Какая кодировка кодировки для API
- 11. Какая кодировка символов для использования
- 12. Правильная кодировка href для window.open() в JavaScript
- 13. Что такое правильная кодировка символов для следующего
- 14. Какая правильная команда для восстановления моих файлов в git?
- 15. Maven - какая правильная область для jar-файлов JDBC?
- 16. Какая кодировка использует SSIS для вывода плоских файлов в Unicode?
- 17. Какая кодировка ожидает xsendfile?
- 18. Какая кодировка для персонажей ╠ü ╠é?
- 19. Какая правильная & строка?
- 20. Какая таблица правильная?
- 21. Какая кодировка требует posFlag?
- 22. Какая кодировка URL это?
- 23. Какая правильная математика выцветает?
- 24. Какая более эффективная кодировка?
- 25. Какая правильная CSV-кодировка для C# для открытия с помощью Excel?
- 26. Какая правильная архитектура Node.js?
- 27. Какая правильная область применения?
- 28. Какая здесь правильная архитектура?
- 29. Какая правильная проверка URL?
- 30. Какая правильная реализация JVM?
сценарии PowerShell должен работать нормально независимо от того, является ли файл закодирован как ASCII (ANSI, технически), UTF-8, или UTF-16 , Проблема, скорее всего, вызвана некоторыми фанковыми символами, скопированными/вставленными из вашего источника. * Всегда * очищайте код, который вы копируете из другого места. –
Да, урок выучил трудный путь! ;) И если нет аргументов для какой-либо конкретной кодировки, я просто вынужу всех из них в UTF8, если только ради согласованности. – Gordon