YanoRyuichi.com/
Wiki
Blog
GitHub
Sandbox
開始行:
* テキストファイルの入出力と文字コード [#ea1d3932]
** 前提 [#w0b9ab98]
*** PowerShellは文字列を(バイト列ではなく)文字列として...
PS> (echo "こんにちは").GetType()
IsPublic IsSerial Name BaseType
-------- -------- ---- --------
True True String System.Object
PS tmp> (echo "こんにちは").Length
5
*** PowerShellの内部文字コードはUTF16 [#w9b78eaf]
echo "こんにちは" > utf16.txt
- PowerShellの内部文字コードはUTF16(UTF16LE)。
- 従って、コマンドレットの出力をリダイレクトでファイルに...
*** 日本語PowerShellのデフォルト文字コードはSJIS [#h42b57...
- 日本語PowerShellのデフォルト文字コードはSJIS。
- 内部文字コードとデフォルト文字コードを分けて扱う。
** テキストファイルの読み込み [#z3f15012]
Get-Content utf16.txt
Get-Content sjis.txt
Get-Content utf8-bom.txt
Get-Content -Encoding UTF8 utf8-nobom.txt
- テキストファイルの読み込みにはGet-Contentコマンドレット...
- 日本語PowerShellの場合、Get-ContentはUTF16、SJIS、UTF8(...
- それら以外のファイルを読み込むには-Encodingオプションで...
- 例えばUTF8(BOMなし)なら Get-Content -Encoding UTF8と指...
- -Encoding Defaultと指定するとSJISを指定する事になる。
** テキストファイルの書き出し [#le6b95c8]
Get-Content -Encoding UTF8 utf8.txt | Set-Content sjis.txt
Get-Content sjis.txt | Set-Content -Encoding UTF8 utf8-b...
Get-Content -Encoding UTF8 utf8.txt | Out-File utf16.txt
Get-Content -Encoding UTF8 utf8.txt | Out-File -Encoding...
- テキストファイルの書き出しにはSet-ContentかOut-Fileを使...
-- これらのコマンドレットの代わりにリダイレクト">"を使っ...
- Set-Contentはデフォルトの文字コードであるSJISで書き出さ...
- Out-Fileは内部文字コードであるUTF16で書き出される。
** UTF8のBOMの除去 [#mcc8546d]
*** PowerShellによる [#s548f397]
[System.IO.File]::WriteAllLines("utf8-bom.txt", "utf8-no...
*** nkfコマンドによる [#ed7e99c4]
nkf.exe -W8 -w --overwrite utf8.txt
終了行:
* テキストファイルの入出力と文字コード [#ea1d3932]
** 前提 [#w0b9ab98]
*** PowerShellは文字列を(バイト列ではなく)文字列として...
PS> (echo "こんにちは").GetType()
IsPublic IsSerial Name BaseType
-------- -------- ---- --------
True True String System.Object
PS tmp> (echo "こんにちは").Length
5
*** PowerShellの内部文字コードはUTF16 [#w9b78eaf]
echo "こんにちは" > utf16.txt
- PowerShellの内部文字コードはUTF16(UTF16LE)。
- 従って、コマンドレットの出力をリダイレクトでファイルに...
*** 日本語PowerShellのデフォルト文字コードはSJIS [#h42b57...
- 日本語PowerShellのデフォルト文字コードはSJIS。
- 内部文字コードとデフォルト文字コードを分けて扱う。
** テキストファイルの読み込み [#z3f15012]
Get-Content utf16.txt
Get-Content sjis.txt
Get-Content utf8-bom.txt
Get-Content -Encoding UTF8 utf8-nobom.txt
- テキストファイルの読み込みにはGet-Contentコマンドレット...
- 日本語PowerShellの場合、Get-ContentはUTF16、SJIS、UTF8(...
- それら以外のファイルを読み込むには-Encodingオプションで...
- 例えばUTF8(BOMなし)なら Get-Content -Encoding UTF8と指...
- -Encoding Defaultと指定するとSJISを指定する事になる。
** テキストファイルの書き出し [#le6b95c8]
Get-Content -Encoding UTF8 utf8.txt | Set-Content sjis.txt
Get-Content sjis.txt | Set-Content -Encoding UTF8 utf8-b...
Get-Content -Encoding UTF8 utf8.txt | Out-File utf16.txt
Get-Content -Encoding UTF8 utf8.txt | Out-File -Encoding...
- テキストファイルの書き出しにはSet-ContentかOut-Fileを使...
-- これらのコマンドレットの代わりにリダイレクト">"を使っ...
- Set-Contentはデフォルトの文字コードであるSJISで書き出さ...
- Out-Fileは内部文字コードであるUTF16で書き出される。
** UTF8のBOMの除去 [#mcc8546d]
*** PowerShellによる [#s548f397]
[System.IO.File]::WriteAllLines("utf8-bom.txt", "utf8-no...
*** nkfコマンドによる [#ed7e99c4]
nkf.exe -W8 -w --overwrite utf8.txt
ページ名: