remove_3till5char.go 913 B

12345678910111213141516171819202122232425262728293031323334353637
  1. // remove_first6char.go
  2. package main
  3. import (
  4. "bufio"
  5. "fmt"
  6. "io"
  7. "os"
  8. )
  9. func main() {
  10. inputFile, _ := os.Open("goprogram")
  11. outputFile, _ := os.OpenFile("goprogramT", os.O_WRONLY|os.O_CREATE, 0666)
  12. defer inputFile.Close()
  13. defer outputFile.Close()
  14. inputReader := bufio.NewReader(inputFile)
  15. outputWriter := bufio.NewWriter(outputFile)
  16. for {
  17. // inputString, readerError := inputReader.ReadString('\n')
  18. inputString, _, readerError := inputReader.ReadLine()
  19. if readerError == io.EOF {
  20. fmt.Println("EOF")
  21. break
  22. }
  23. //fmt.Printf("The input was: --%s--", inputString)
  24. outputString := string([]byte(inputString)[2:5]) + "\r\n"
  25. //fmt.Printf("The output was: --%s--", outputString)
  26. _, err := outputWriter.WriteString(outputString)
  27. //fmt.Printf("Number of bytes written %d\n", n)
  28. if err != nil {
  29. fmt.Println(err)
  30. return
  31. }
  32. }
  33. outputWriter.Flush()
  34. fmt.Println("Conversion done")
  35. }