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
|
#(Alphanumeric | Literal . | Alphanumeric) - the only unique thing in common for lines with applications
|
||||||
if ($line -match "\w\.\w") {
|
if ($line -match "\w\.\w") {
|
||||||
$software = [Software]::new()
|
$software = [Software]::new()
|
||||||
$software.Name = $line.Substring(0, $idStart).TrimEnd()
|
#Manage non latin characters
|
||||||
$software.Id = $line.Substring($idStart, $versionStart - $idStart).TrimEnd()
|
$nameDeclination = $([System.Text.Encoding]::UTF8.GetByteCount($($line.Substring(0, $idStart) -replace '[\u4e00-\u9fa5]', '**')) - $line.Substring(0, $idStart).Length)
|
||||||
$software.Version = $line.Substring($versionStart, $availableStart - $versionStart).TrimEnd()
|
$software.Name = $line.Substring(0, $idStart - $nameDeclination).TrimEnd()
|
||||||
$software.AvailableVersion = $line.Substring($availableStart).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
|
#add formated soft to list
|
||||||
$upgradeList += $software
|
$upgradeList += $software
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue