示例#1
0
// ...аналогично с записью.
func FWrite(filename string, data []byte) {
	openMode := os.O_WRONLY | os.O_CREATE | os.O_TRUNC

	file, openFail := os.OpenFile(filename, openMode, 0644)
	defer file.Close()
	assert.Nil(openFail)

	bytesWrote, writeFail := file.Write(data)
	assert.Nil(writeFail)
	assert.True(bytesWrote == len(data), "Writing into file was interrupted.")
}
示例#2
0
// Поскольку критически важен полный контроль над считыванием файла исходного
// кода, готовые решения типа ioutil.ReadFile не используются...
func FRead(filename string) []byte {
	file, openFail := os.Open(filename)
	defer file.Close()
	assert.Nil(openFail)

	fStat, statFail := file.Stat()
	assert.Nil(statFail)

	fSize := fStat.Size()
	buffer := make([]byte, fSize)

	bytesRead, readFail := file.Read(buffer)
	assert.Nil(readFail)
	assert.True(int64(bytesRead) == fSize, "Failed to read file completely.")

	return buffer
}