Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import (
- "bufio"
- "fmt"
- "io"
- "io/ioutil"
- "os"
- "strconv"
- )
- var num = 100
- // MAIN
- func main() {
- err := insertStringToFile("test.txt", strconv.Itoa(num))
- if err != nil {
- fmt.Println(err)
- return
- }
- }
- func insertStringToFile(path, str string) error {
- lines, err := File2Lines(path)
- if err != nil {
- return err
- }
- fileContent := ""
- for _, line := range lines {
- fileContent += str
- fileContent += line
- fileContent += "\n"
- }
- return ioutil.WriteFile(path, []byte(fileContent), 0644)
- }
- func File2Lines(path string) ([]string, error) {
- f, err := os.Open(path)
- if err != nil {
- return nil, err
- }
- // Keep the file open for writing until LinesFromReader is done, then close the channel.
- defer f.Close()
- return LinesFromReader(f)
- }
- func LinesFromReader(r io.Reader) ([]string, error) {
- var lines []string
- scanner := bufio.NewScanner(r)
- for scanner.Scan() {
- num++ // Increment line?
- fmt.Println(num)
- lines = append(lines, scanner.Text())
- }
- if err := scanner.Err(); err != nil {
- return nil, err
- }
- return lines, nil
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement