golang文件读取-按指定BUFF大小读取

标签: file read write
151人阅读 评论(0) 收藏 举报
分类:

golang文件读取-按指定BUFF大小读取

a.txt文件内容:

ABCDEFGHI
HELLO GOLANG

package main

import (
    "fmt"
    "os"
    "io"
)

func main() {
    fileName := "C:\\Robert\\日志分析\\tools_go\\vdn_sqlInterface\\a.txt"
    file, err := os.OpenFile(fileName, os.O_RDWR, 0666)
    if err != nil {
        fmt.Println("Open file error!", err)
        return
    }
    defer file.Close()

    stat, err := file.Stat()
    if err != nil {
        panic(err)
    }

    var size = stat.Size()
    fmt.Println("file size=", size)

    // define read block size = 2
    buf := make([]byte, 2)
    for {
        length, err := file.Read(buf)
        if err != nil {
            if err == io.EOF {
                break
            } else {
                fmt.Println("Read file error!", err)
                return
            }
        }

        fmt.Println(length, string(buf))
    }

    fmt.Println("File read ok!")
}

输出:
每次读取2个字节的大小并输出

file size= 23
2 AB
2 CD
2 EF
2 GH
2 I
2
H
2 EL
2 LO
2 G
2 OL
2 AN
1 GN
File read ok!

查看评论

golang标准库学习——buffio包

import "bufio" bufio包实现了有缓冲的I/O。它包装一个io.Reader或io.Writer接口对象,创建另一个也实现了该接口,且同时还提供了缓冲和一些文本I/O的帮助函数的对象...
  • weiyuefei
  • weiyuefei
  • 2015-12-05 16:30:12
  • 2714

Go实战--golang中读写文件的几种方式

生命不止,继续 go go go !!!读写文件应该是在开发过程中经常遇到的,今天要跟大家一起分享的就是在golang的世界中,如何读写文件。使用io/ioutil进行读写文件先回忆下之前的iouti...
  • wangshubo1989
  • wangshubo1989
  • 2017-07-07 19:49:01
  • 15149

Golang 目录文件数量和大小统计

《The Go Programming Language》笔记import ( "flag" "fmt" "io/ioutil" "os" "path/file...
  • lezong2011
  • lezong2011
  • 2016-11-29 12:46:01
  • 1814

那些年使用Golang读取txt的坑!

项目中涉及到一些用户评论和用户可以自定义发布长段文字功能, 所以就想到项目中必须要加上文字过滤的功能了。 去年做的项目也有评论等功能, 等现在的项目没问题就把这个功能加过去! 还是直接上代码://获取...
  • u013701108
  • u013701108
  • 2016-02-22 10:53:28
  • 1799

Golang的坑之http读取大文件必须读完

先上代码 package main import ( "fmt" "net/http" ) func main() { resp, err := http.Get("ht...
  • webxscan
  • webxscan
  • 2017-03-14 08:46:17
  • 646

golang简单获取上传文件大小的实现代码

package main import ( "fmt" "io" "log" "net/http" "os" ) // 获取文件大小的接口 type Size interface { ...
  • ribavnu
  • ribavnu
  • 2016-09-13 10:11:23
  • 2306

golang文件读取-按指定BUFF大小读取

golang文件读取-按指定BUFF大小读取 a.txt文件内容: ABCDEFGHI HELLO GOLANG package main import ( "fmt...
  • robertkun
  • robertkun
  • 2018-01-25 16:43:09
  • 151

Go语言_Go_Golang 逐行读取文件

示例代码 // File_test2 project main.go package main import ( "bufio" "fmt" "io" "os" "strings" ) ...
  • u010003835
  • u010003835
  • 2016-07-11 18:25:56
  • 10645

Go1.9按行读取日志文件并处理

package mainimport ( "bufio" "bytes" "context" "log" "os" "sync" )const ( ...
  • fyxichen
  • fyxichen
  • 2017-06-22 17:24:45
  • 1059

Go 获取文件基本信息方法

Go 获取文件信息方法 - 文件修改时间 - 文件是否存在 - 文件是否是目录 - 文件权限 - 文件名 - 文件大小 - 文件创建时间 - 文件最后写入时间 - 文件最后访问时间 - 文件属性...
  • phachon
  • phachon
  • 2017-10-10 20:11:30
  • 651
    个人资料
    专栏达人 持之以恒
    等级:
    访问量: 74万+
    积分: 9218
    排名: 2870
    博客专栏
    文章分类
    最新评论