タグ

ファイルに関するy_yukiのブックマーク (2)

  • ファイルシステムと、その上のGo言語の関数たち(2)

    Base()とDir()はSplit()を目的別に特化させたものです。 複数のパスからなる文字列を分解する filepath.SplitList()という名前の関数もあります。名前だけ見るとパスの分割に使えそうですが、これは別の用途の関数で、 環境変数の値などにある「複数のパスを1つのテキストにまとめたもの」を分解するのに使います。 たとえば、次のコードは、Unix系OSにあるwhichコマンドをGoで実装してみたものです。 PATH環境変数のパス一覧を取得してきて、それをfilepath.SplitList()で個々のパスに分割します。 その後、各パスの下に最初の引数で指定された実行ファイルがあるかどうかをチェックしています。 package main import ( "fmt" "os" "path/filepath" ) func main() { if len(os.Args)

    ファイルシステムと、その上のGo言語の関数たち(2)
  • Go 言語 ファイル・I/O 関係のよく使う基本ライブラリ | yunabe.jp

    Go 言語でプログラムを書く際に欠かせないファイルなどの入出力(IO)関係の基的なライブラリの一覧。この辺のライブラリはかなりよく使うのでパッケージ名や型名を覚えておくといちいちドキュメントを検索せずにすんで良いかも。 目次 備忘用早見表 io.Reader, io.Writer ファイルを読み書き用に開く 標準入力/標準出力/標準エラー メモリからの読み込み・メモリへの書き込み Reader, Writer を効率よく使うためのライブラリ bufio.Scanner: 文字列を一行ずつ読み込む bufio.Reader, Writer: バッファリングして効率よく読み書きを行う "io/ioutil".ReadAll: Reader から全てのデータを一度に読み込む "io/ioutil".ReadFile, WriteFile: ファイル名と byte[]で読み書き Write([]

  • 1