Trim newline in a golang tcp server
up vote
1
down vote
favorite
I'm trying to figure out how to remove the new line in a golang string message that I've received from a netcat tcp message. I've used the string.TrimSpace
function but I still can't seem to remove the newline. Any ideas? I've also tried to use the other trimming functions in the string package but couldn't get those to work either.
Could it be related to the error reading: EOF msg?
>>> go run newline_ex.go
Listening on localhost:8080
Error reading: EOF
received message: sometext|n
post trim: sometext|n
# Seperate terminal
>>> echo -n "sometextn" | nc localhost 8080
package main
import (
"bufio"
"fmt"
"net"
"os"
"strings"
)
const (
host = "localhost"
port = "8080"
adress = host + ":" + port
connType = "tcp"
)
func handleMsg(message string) (string, error) {
fmt.Printf("received message: %sn", message)
m := strings.TrimSpace(message)
fmt.Printf("post trim: %s n", m)
return "OK", nil
}
func handleRequest(conn net.Conn) {
msg, err := bufio.NewReader(conn).ReadString('n')
if err != nil {
fmt.Println("Error reading:", err.Error())
}
response, err := handleMsg(msg)
if err != nil {
fmt.Printf("fail to handle message: %vn", err)
}
fmt.Printf("Sending response: %vn", response)
conn.Write(byte(response + "n"))
conn.Close()
}
func main() {
l, err := net.Listen(connType, adress)
if err != nil {
fmt.Printf("Error listening: %v", err)
os.Exit(1)
}
defer l.Close()
fmt.Println("Listening on " + adress)
for {
conn, err := l.Accept()
if err != nil {
fmt.Printf("Error accepting: %vn", err)
os.Exit(1)
}
go handleRequest(conn)
}
}
string go tcp
add a comment |
up vote
1
down vote
favorite
I'm trying to figure out how to remove the new line in a golang string message that I've received from a netcat tcp message. I've used the string.TrimSpace
function but I still can't seem to remove the newline. Any ideas? I've also tried to use the other trimming functions in the string package but couldn't get those to work either.
Could it be related to the error reading: EOF msg?
>>> go run newline_ex.go
Listening on localhost:8080
Error reading: EOF
received message: sometext|n
post trim: sometext|n
# Seperate terminal
>>> echo -n "sometextn" | nc localhost 8080
package main
import (
"bufio"
"fmt"
"net"
"os"
"strings"
)
const (
host = "localhost"
port = "8080"
adress = host + ":" + port
connType = "tcp"
)
func handleMsg(message string) (string, error) {
fmt.Printf("received message: %sn", message)
m := strings.TrimSpace(message)
fmt.Printf("post trim: %s n", m)
return "OK", nil
}
func handleRequest(conn net.Conn) {
msg, err := bufio.NewReader(conn).ReadString('n')
if err != nil {
fmt.Println("Error reading:", err.Error())
}
response, err := handleMsg(msg)
if err != nil {
fmt.Printf("fail to handle message: %vn", err)
}
fmt.Printf("Sending response: %vn", response)
conn.Write(byte(response + "n"))
conn.Close()
}
func main() {
l, err := net.Listen(connType, adress)
if err != nil {
fmt.Printf("Error listening: %v", err)
os.Exit(1)
}
defer l.Close()
fmt.Println("Listening on " + adress)
for {
conn, err := l.Accept()
if err != nil {
fmt.Printf("Error accepting: %vn", err)
os.Exit(1)
}
go handleRequest(conn)
}
}
string go tcp
add a comment |
up vote
1
down vote
favorite
up vote
1
down vote
favorite
I'm trying to figure out how to remove the new line in a golang string message that I've received from a netcat tcp message. I've used the string.TrimSpace
function but I still can't seem to remove the newline. Any ideas? I've also tried to use the other trimming functions in the string package but couldn't get those to work either.
Could it be related to the error reading: EOF msg?
>>> go run newline_ex.go
Listening on localhost:8080
Error reading: EOF
received message: sometext|n
post trim: sometext|n
# Seperate terminal
>>> echo -n "sometextn" | nc localhost 8080
package main
import (
"bufio"
"fmt"
"net"
"os"
"strings"
)
const (
host = "localhost"
port = "8080"
adress = host + ":" + port
connType = "tcp"
)
func handleMsg(message string) (string, error) {
fmt.Printf("received message: %sn", message)
m := strings.TrimSpace(message)
fmt.Printf("post trim: %s n", m)
return "OK", nil
}
func handleRequest(conn net.Conn) {
msg, err := bufio.NewReader(conn).ReadString('n')
if err != nil {
fmt.Println("Error reading:", err.Error())
}
response, err := handleMsg(msg)
if err != nil {
fmt.Printf("fail to handle message: %vn", err)
}
fmt.Printf("Sending response: %vn", response)
conn.Write(byte(response + "n"))
conn.Close()
}
func main() {
l, err := net.Listen(connType, adress)
if err != nil {
fmt.Printf("Error listening: %v", err)
os.Exit(1)
}
defer l.Close()
fmt.Println("Listening on " + adress)
for {
conn, err := l.Accept()
if err != nil {
fmt.Printf("Error accepting: %vn", err)
os.Exit(1)
}
go handleRequest(conn)
}
}
string go tcp
I'm trying to figure out how to remove the new line in a golang string message that I've received from a netcat tcp message. I've used the string.TrimSpace
function but I still can't seem to remove the newline. Any ideas? I've also tried to use the other trimming functions in the string package but couldn't get those to work either.
Could it be related to the error reading: EOF msg?
>>> go run newline_ex.go
Listening on localhost:8080
Error reading: EOF
received message: sometext|n
post trim: sometext|n
# Seperate terminal
>>> echo -n "sometextn" | nc localhost 8080
package main
import (
"bufio"
"fmt"
"net"
"os"
"strings"
)
const (
host = "localhost"
port = "8080"
adress = host + ":" + port
connType = "tcp"
)
func handleMsg(message string) (string, error) {
fmt.Printf("received message: %sn", message)
m := strings.TrimSpace(message)
fmt.Printf("post trim: %s n", m)
return "OK", nil
}
func handleRequest(conn net.Conn) {
msg, err := bufio.NewReader(conn).ReadString('n')
if err != nil {
fmt.Println("Error reading:", err.Error())
}
response, err := handleMsg(msg)
if err != nil {
fmt.Printf("fail to handle message: %vn", err)
}
fmt.Printf("Sending response: %vn", response)
conn.Write(byte(response + "n"))
conn.Close()
}
func main() {
l, err := net.Listen(connType, adress)
if err != nil {
fmt.Printf("Error listening: %v", err)
os.Exit(1)
}
defer l.Close()
fmt.Println("Listening on " + adress)
for {
conn, err := l.Accept()
if err != nil {
fmt.Printf("Error accepting: %vn", err)
os.Exit(1)
}
go handleRequest(conn)
}
}
string go tcp
string go tcp
asked Nov 8 at 0:15
Bobloblawlawblogs
4119
4119
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
up vote
1
down vote
strings.Trimspace
trims the leading and trailing whitespace. Use
strings.TrimRight("sometextn", "n")
Tried TrimRight and it didn't work :(
– Bobloblawlawblogs
Nov 8 at 2:24
Can you define "didn't work"?
– Pie 'Oh' Pah
Nov 14 at 23:03
add a comment |
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
1
down vote
strings.Trimspace
trims the leading and trailing whitespace. Use
strings.TrimRight("sometextn", "n")
Tried TrimRight and it didn't work :(
– Bobloblawlawblogs
Nov 8 at 2:24
Can you define "didn't work"?
– Pie 'Oh' Pah
Nov 14 at 23:03
add a comment |
up vote
1
down vote
strings.Trimspace
trims the leading and trailing whitespace. Use
strings.TrimRight("sometextn", "n")
Tried TrimRight and it didn't work :(
– Bobloblawlawblogs
Nov 8 at 2:24
Can you define "didn't work"?
– Pie 'Oh' Pah
Nov 14 at 23:03
add a comment |
up vote
1
down vote
up vote
1
down vote
strings.Trimspace
trims the leading and trailing whitespace. Use
strings.TrimRight("sometextn", "n")
strings.Trimspace
trims the leading and trailing whitespace. Use
strings.TrimRight("sometextn", "n")
answered Nov 8 at 0:29
Pie 'Oh' Pah
3,4041437
3,4041437
Tried TrimRight and it didn't work :(
– Bobloblawlawblogs
Nov 8 at 2:24
Can you define "didn't work"?
– Pie 'Oh' Pah
Nov 14 at 23:03
add a comment |
Tried TrimRight and it didn't work :(
– Bobloblawlawblogs
Nov 8 at 2:24
Can you define "didn't work"?
– Pie 'Oh' Pah
Nov 14 at 23:03
Tried TrimRight and it didn't work :(
– Bobloblawlawblogs
Nov 8 at 2:24
Tried TrimRight and it didn't work :(
– Bobloblawlawblogs
Nov 8 at 2:24
Can you define "didn't work"?
– Pie 'Oh' Pah
Nov 14 at 23:03
Can you define "didn't work"?
– Pie 'Oh' Pah
Nov 14 at 23:03
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53199819%2ftrim-newline-in-a-golang-tcp-server%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown