本文实例讲述了Go语言清除文件中空行的方法。分享给大家供大家参考。具体实现方法如下:
这里使用Go语言读取源文件,去掉空行,并写到目标文件
复制代码 代码如下:
/**
* Created with IntelliJ IDEA.
* User: hyper-carrot
* Date: 12-8-31
* Time: 下午4:04
* To change this template use File | Settings | File Templates.
*/
package main
import (
"os"
"bufio"
"fmt"
)
func DeleteBlankFile(srcFilePah string, destFilePath string) error {
srcFile, err := os.OpenFile(srcFilePah, os.O_RDONLY, 0666)
defer srcFile.Close()
if err != nil {
return err
}
srcReader := bufio.NewReader(srcFile)
destFile, err := os.OpenFile(destFilePath, os.O_WRONLY|os.O_CREATE, 0666)
defer destFile.Close()
if err != nil {
return err
}
var destContent string
for {
str, _ := srcReader.ReadString('\n')
if err != nil {
if err == io.EOF {
fmt.Print("The file end is touched.")
break
} else {
return err
}
}
if 0 == len(str) || str == "\r\n" {
continue
}
fmt.Print(str)
destFile.WriteString(str)
}
return nil
}
func main() {
DeleteBlankFile("e:\\src.txt", "e:\\dest.txt")
}
* Created with IntelliJ IDEA.
* User: hyper-carrot
* Date: 12-8-31
* Time: 下午4:04
* To change this template use File | Settings | File Templates.
*/
package main
import (
"os"
"bufio"
"fmt"
)
func DeleteBlankFile(srcFilePah string, destFilePath string) error {
srcFile, err := os.OpenFile(srcFilePah, os.O_RDONLY, 0666)
defer srcFile.Close()
if err != nil {
return err
}
srcReader := bufio.NewReader(srcFile)
destFile, err := os.OpenFile(destFilePath, os.O_WRONLY|os.O_CREATE, 0666)
defer destFile.Close()
if err != nil {
return err
}
var destContent string
for {
str, _ := srcReader.ReadString('\n')
if err != nil {
if err == io.EOF {
fmt.Print("The file end is touched.")
break
} else {
return err
}
}
if 0 == len(str) || str == "\r\n" {
continue
}
fmt.Print(str)
destFile.WriteString(str)
}
return nil
}
func main() {
DeleteBlankFile("e:\\src.txt", "e:\\dest.txt")
}
希望本文所述对大家的Go语言程序设计有所帮助。