Pergunta

Tenho um arquivo salvo como UCS-2 Little Endian e quero alterar a codificação então executei o seguinte código:

cat tmp.log -encoding UTF8 > new.log

O arquivo resultante ainda está em UCS-2 Little Endian.Será porque o pipeline está sempre nesse formato?Existe uma maneira fácil de canalizar isso para um novo arquivo como UTF8?

Foi útil?

Solução

Como sugerido aqui:

Get-Content tmp.log | Out-File -Encoding UTF8 new.log

Outras dicas

Eu faria assim:

get-content tmp.log -encoding Unicode | set-content new.log -encoding UTF8

Meu entendimento é que a opção -encoding seleciona a codificação na qual o arquivo deve ser lido ou gravado.

carregar conteúdo do arquivo xml com codificação.

(Get-Content -Encoding UTF8 $fileName)

Se você estiver lendo um arquivo XML, aqui está uma maneira ainda melhor de se adaptar à codificação do seu arquivo XML:

$xml = New-Object -Typename XML
$xml.load('foo.xml')
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top