標準愚痴出力

個人的なIT作業ログです。もしかしたら一般的に参考になることが書いているかもしれません(弱気

テキストデータ加工関数集 go-texts をようやくまとめた

qrunch.ioより転載)

これな > zetamatta/go-texts: go-texts is the utility package for text-data

  • "go-texts".SortedKeys
    • string をキーとするマップのキーの配列をソートして得る(Perl の sort keys と同じ。キーに対する値の方は何でも大丈夫。reflect パッケージを使っている)
  • "go-texts/mbcs".UtoA【Windowsのみ】
    • UTF8 テキストをマルチバイト文字列へ変換
  • "go-texts/mbcs".AtoU【Windowsのみ】
    • マルチバイト文字列をUTF8へ変換
  • "go-texts/mbcs".NewAutoDetectReader【Windowsのみ】
    • 与えられた io.Reader の中身を元の文字コード(ANSI,UTF8 or UTF16)を自動判別した上で、UTF8 へ変換しながら読みだす io.Reader を得る
  • "go-texts/mbcs".ConsoleCP【Windowsのみ】
    • 現在のコンソールのコードページを得る。OS やスレッドのコードページではないのに注意。子プロセスで動作する CMD.EXE が扱うバッチファイル向けには、こちらから得られるコードページを使わないといけない
  • "go-texts/dos".System
    • C言語のsystem関数のようなもの。二重引用符関係のトラブルを回避する小細工が入っている(環境変数使ってるだけ)
  • "go-texts/dos".WithoutExt
    • ファイルのパスから拡張子を除く。本来、path/filepath に欲しかった