標準愚痴出力

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

Shift-JISファイルの作成

現在のコードページの文字形式ではなくて、本当に ShiftJIS 固定となるので、日本語特化のアプリとなるが

package main

import (
    "fmt"
    "os"
    "path/filepath"

    "golang.org/x/text/encoding/japanese"
)

const fname = "search.lst"

func main1() error {
    fd, err := os.OpenFile(fname, os.O_CREATE|os.O_EXCL, 0666)
    if err != nil {
        return err
    }
    defer fd.Close()

    w := japanese.ShiftJIS.NewEncoder().Writer(fd)

となる。O_EXCL はただの上書き禁止オプションで SJIS とは直接の関係はない。