Handle Chinese characters in apps' names
parent
75d7a12721
commit
86c894eb35
|
@ -55,10 +55,12 @@ function Get-WingetOutdatedApps {
|
|||
#(Alphanumeric | Literal . | Alphanumeric) - the only unique thing in common for lines with applications
|
||||
if ($line -match "\w\.\w") {
|
||||
$software = [Software]::new()
|
||||
$software.Name = $line.Substring(0, $idStart).TrimEnd()
|
||||
$software.Id = $line.Substring($idStart, $versionStart - $idStart).TrimEnd()
|
||||
$software.Version = $line.Substring($versionStart, $availableStart - $versionStart).TrimEnd()
|
||||
$software.AvailableVersion = $line.Substring($availableStart).TrimEnd()
|
||||
#Manage non latin characters
|
||||
$nameDeclination = $([System.Text.Encoding]::UTF8.GetByteCount($($line.Substring(0, $idStart) -replace '[\u4e00-\u9fa5]', '**')) - $line.Substring(0, $idStart).Length)
|
||||
$software.Name = $line.Substring(0, $idStart - $nameDeclination).TrimEnd()
|
||||
$software.Id = $line.Substring($idStart - $nameDeclination, $versionStart - $idStart).TrimEnd()
|
||||
$software.Version = $line.Substring($versionStart - $nameDeclination, $availableStart - $versionStart).TrimEnd()
|
||||
$software.AvailableVersion = $line.Substring($availableStart - $nameDeclination).TrimEnd()
|
||||
#add formated soft to list
|
||||
$upgradeList += $software
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue