SnowStack.EncodingProbe
1.0.0-preview.5
See the version list below for details.
dotnet add package SnowStack.EncodingProbe --version 1.0.0-preview.5
NuGet\Install-Package SnowStack.EncodingProbe -Version 1.0.0-preview.5
<PackageReference Include="SnowStack.EncodingProbe" Version="1.0.0-preview.5" />
<PackageVersion Include="SnowStack.EncodingProbe" Version="1.0.0-preview.5" />
<PackageReference Include="SnowStack.EncodingProbe" />
paket add SnowStack.EncodingProbe --version 1.0.0-preview.5
#r "nuget: SnowStack.EncodingProbe, 1.0.0-preview.5"
#:package SnowStack.EncodingProbe@1.0.0-preview.5
#addin nuget:?package=SnowStack.EncodingProbe&version=1.0.0-preview.5&prerelease
#tool nuget:?package=SnowStack.EncodingProbe&version=1.0.0-preview.5&prerelease
SnowStack.EncodingProbe
このソリューションには以下の二つのプロジェクトが含まれています。
SnowStack.EncodingProbe : NuGetパッケージ
SnowStack.EncodingProbe.PowerShell : PowerShellコマンドレット
SnowStack.EncodingProbe パッケージは、文字エンコーディングの推測を行うクラスライブラリです。
SnowStack.EncodingProbe.PowerShellコマンドレットは、Resolve-Encoding というPowerShellコマンドレットを格納しています。Resolve-Encoding は EncodingProbeパッケージを使用して、文字エンコーディングの推測を行うコマンドレットです。
EncodingProbe の主な機能は以下の様になります。
文字エンコーディングの推測
BOMの有無の確認
改行コードの種類の確認
コマンドが認識しているカルチャー情報の表示
実行環境情報(OS種別 / .NETランタイム / ロケール / PowerShellホスト)の取得
SnowStack.EncodingProbe パッケージは、内部で UTF.Unknown を使用しています。
EncodingProbe の独自文字エンコーディング推測処理で、英語・日本語・韓国語・繁体字中国語・簡体字中国語の推測を行い、それらの推測でわからなかった場合は、 UTF.Unknown に文字エンコーディング推測を任せます。
UTF.Unknown は欧米などのシングルバイト文字エンコーディングの推測には優れていますが、東アジア漢字文化圏の旧マルチバイト文字エンコーディングの推測では、やや推測信頼性に劣る欠点があり、東アジア漢字文化圏の文字エンコーディングの推測処理だけを、EncodingProbe の独自文字エンコーディング推測処理で補っています。
両者の文字エンコーディングの推測処理を組み合わせることにより、世界中の文字エンコーディングの推測処理ょを可能にしています。
2026年7月8日に preview5 をリリースしました。
まだ、テスト中のため正式版はリリースしていません。今しばらくお待ちください。
preview5 での変更点
Get-EncodingProbePlatformInfoコマンドレットを新規追加しました。OS種別、.NETランタイム情報、ロケール・コードページ情報、PowerShellホスト情報(バージョン、Edition、-Encodingパラメータの対応状況)をまとめて取得できます。EncodingInformation.EncodingNameをEncodingInformation.EncodingWebNameにリネームしました(破壊的変更)。値自体は.NETのEncoding.WebName相当(例:"utf-8")であり、.NETのEncoding.EncodingName(表示名、例:"Unicode (UTF-8)")とは異なるため、実体に合わせて命名を改めています。EncodingInformationからIsWindowsOs/IsMacOs/IsLinuxOsを削除しました。個々のファイルの判定結果とは無関係な実行環境情報のため、Get-EncodingProbePlatformInfo側に統合しています。EncodingInformation.Cultureをstring?(Nullable Reference Types対応)に変更しました。EncodingInformation.UsePSNameの判定基準(何を根拠に true/false とするか)をXMLドキュメントコメントに明記しました。
NuGet.org より SnowStack.EncodingProbe を公開しました。
以下の記事で使い方の解説を行っています。
SnowStack.EncodingProbe NuGet Package 解説
また、PowerShell コマンドレットの解説は同ブログの以下の記事で解説しています。
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Framework | net48 is compatible. net481 was computed. |
-
.NETFramework 4.8
- UTF.Unknown (>= 2.6.0)
-
net10.0
- UTF.Unknown (>= 2.6.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.0.0 | 133 | 7/14/2026 |
| 1.0.0-preview.6 | 52 | 7/11/2026 |
| 1.0.0-preview.5 | 58 | 7/8/2026 |
| 1.0.0-preview.4 | 56 | 7/2/2026 |
| 1.0.0-preview.3 | 67 | 6/23/2026 |
| 1.0.0-preview.2 | 58 | 6/19/2026 |
| 1.0.0-preview.1 | 60 | 6/7/2026 |
初回リリース。文字エンコーディング推測 / BOM / 改行コード判定に対応。