Есть ли способ конвертировать очень большой XML файл с кодировкой UTF8 в powershell? - PullRequest
1 голос
/ 15 января 2020

У меня большой XML файл (1,7 ГБ), и я пытаюсь применить к нему кодировку UTF-8 перед импортом на SQL сервер. Используя powershell, процесс конвертации занял более 1 часа, а система совершенно бесполезна, поскольку максимально использует память. Может кто-нибудь предложить более эффективный способ использования PowerShell для кодирования этого файла? Это потому, что у меня есть несколько других файлов, которые нужно будет конвертировать. Заранее благодарим вас за то, что нашли время ответить.

Этот метод используется в настоящее время:

$sourcePath = "C:\Folder\myfile.xml"
$destinationPath = "E:\Folder\myfile.xml"
Write-Host "Converting $_"
$content = Get-Content $_.FullName
Set-content (Join-Path -Path $destinationPath -ChildPath $_) -Encoding UTF8 -Value $content

================ ================================================== ======

1 Ответ

0 голосов
/ 15 января 2020

Вы пробовали это?

[System.Io.File]::ReadAllText($sourcePath) | Out-File -FilePath $destinationPath -Encoding UTF8

Использование классов. NET должно быть быстрее.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...