How to process a file line by line in Go?

In the Go programming language, How to process a file line by line?

An equivalent piece of Bash code could be

while read line ; do
    echo $line
done < ./input.txt

You can make use of the bufio package’s Scan().

// open the file filepath
f := os.Open(filepath)
// create a scanner
fs := bufio.NewScanner(f)

// scan file https://golang.org/pkg/bufio/#Scanner.Scan
for fs.Scan() {
        txt := fs.Text()
        // do anything with txt
}

If you are reading line by line from STDIN:

fs := bufio.NewScanner(os.Stdin)
for fs.Scan() {
    txt := fs.Text()
    // process txt
}

Similar Posts

  • SetProxy: 一个设置IE代理的命令行小工具

    IE的代理设置用起来并不方便,我自己而言就要经常更改代理服务器,相信很多人有跟我相同的需要。使用C++编写了一个小程序SetProxy调用Win32 API来设置代理服务器IP,用起来方便多了。 编译后为一个可运行console程序,将它放在\windows\system32目录下,使用时只要运行 SetProxy IP:port 就可以把IP设置好,如果要关闭代理,只需运行 SetProxy “” 命令行中运行,界面较土,但用着方便。可以考虑设置几个快捷方式在桌面或者工具栏,点击即设置代理,其它方式发挥想象。 程序下载地址. 源代码也放在这里,希望有需要的人可以用得上 ;) 源代码下载地址. 这是一份有些年头的代码, 如果你在较新的编译器下编译这个项目, 请先做[[setproxy-一个设置ie代理的小工具#comment-995|这里所述的小修改]]. — Eric on Apr. 9, 2014. Read more: Making Emacs Start Up Faster Profiling Vim to Find Out Which Plugin Makes Vim Slow Handling Sparse Files on Linux Spring Shell Technology For Java development Vim Tutorial for Beginners: vimtutor…

  • How to log connections hitting certain rules in iptables on Linux?

    How to log connections hitting certain rules in iptables on Linux? Like the one that are dropped because of too frequently creating SSH connections. You can create a new chain named LOGNDROP that log the connections and drop them, then pass the connection to be redirected to the LOGNDROP chain. $tables -N LOGNDROP # Connections…

  • Hiding Private IP from Email Headers in Thunderbird

    It seems Thunderbird sends out my private/lan IP to the SMTP server. For example, in an Email sent out by Thunderbird, the header contains Received: from [192.168.1.2] (example.com [1.2.3.4]) by mail.example.com (Postfix) with ESMTPSA id 92CD297DEA; It is fine that the SMTP server records the public IP (1.2.3.4) as it is what it sees. But…

  • Run Firefox on Remote Host over SSH

    How to  run Firefox on Remote Host over SSH ? After $ ssh -X remotehost Run this script on remote host: #!/bin/bash export $(dbus-launch) export NSS_USE_SHARED_DB=ENABLED firefox -no-remote & This script credits to Waxborg: http://waxborg.servepics.com/opensuse/remote-administration/running-firefox-remotely-over-ssh. Read more: How to run screen on a Linux host reporting “Cannot make directory ‘/var/run/screen’: Permission denied”? Fixing “Remote Host…

  • How to filter bbpress content in WordPress

    In WordPress, we can filter the post content by adding a filter to the_content: add_filter('the_content', 'inline_markdown_pre_process_shortcode2', 7); But how to filter the content for bbpress contents? bbpress topic and reply (they are separated) content have their own filters: bbp_get_topic_content and bbp_get_reply_content. For example, add_filter(‘bbp_get_topic_content’, ‘my_plugin_custom_bbp_function’); add_filter(‘bbp_get_reply_content’, ‘my_plugin_custom_bbp_function’); function my_plugin_custom_bbp_function($content) { return ‘my_plugin_custom_bbp_function processed: ‘.$content; }…

Leave a Reply

Your email address will not be published. Required fields are marked *