2013-09-21 4 views
1

">"를 표시 한 다음 사용자가 명령 줄에 무언가를 입력하고 Enter 키를 누르기를 기다리십시오 (궁극적으로이를 바이트 조각으로 저장하십시오) . 자바에서 나는 같은 것을했을 것 : 나는 os.Args, console.ReadBytes('\n')bufio.NewReader(os.Stdin) 관련된 몇 가지를 시도했습니다Go에서 명령 줄 입력을 대기하는 방법

Scanner scanner = new Scanner(System.in); 

System.out.print("> "); 
String sentence = scanner.nextLine(); 

을하지만, 난 여전히 그것을 생각하지 않았습니다. 어떤 제안이라도 대단히 감사하겠습니다. 감사.

답변

3

일부 Go 코드는 도움이되었을 것입니다. 그래서 내가 잘못한 것을 말할 수 있습니다. Go에서이 작업을 수행하는 방법은 다음과 같습니다.

package main 

import (
    "bufio" 
    "fmt" 
    "os" 
) 

func main() { 
    buf := bufio.NewReader(os.Stdin) 
    fmt.Print("> ") 
    sentence, err := buf.ReadBytes('\n') 
    if err != nil { 
     fmt.Println(err) 
    } else { 
     fmt.Println(string(sentence)) 
    } 
} 
+1

문자열을 원하면 buf.ReadString ('\ n')도 사용하십시오. –

+0

입력 코드를 루프에 넣고 채널을 따라 텍스트 행을 소비 goroutine으로 보낼 수 있습니다. 이 추가 기능은 사용자 입력 처리를 자연스럽게 동시에 표현할 수있는 방법을 제공합니다. –

관련 문제