十三、通信
从文件读取(无缓冲)
1 package main 2 3 import ( 4 "fmt" 5 "os" 6 ) 7 8 func main() { 9 buf := make([]byte, 1024) 10 //打开文件 11 f, _ := os.Open("D:/123.txt") 12 //确保关闭了f 13 defer f.Close() 14 for { 15 n, _ := f.Read(buf) 16 fmt.Println(n) 17 if n == 0 { 18 break 19 } 20 os.Stdout.Write(buf[:n]) 21 } 22 }
结果:
8
133535350
从文件读取(有缓冲的)
1 package main 2 3 import ( 4 "bufio" 5 "fmt" 6 "os" 7 ) 8 9 func main() { 10 buf := make([]byte, 1024) 11 //打开文件 12 f, _ := os.Open("D:/123.txt") 13 //确保关闭了f 14 defer f.Close() 15 //转换f为有缓冲的Reader 16 r := bufio.NewReader(f) 17 w := bufio.NewWriter(os.Stdout) 18 defer w.Flush() 19 for { 20 //从Reader读取,而向Writer写入 21 n, _ := r.Read(buf) 22 fmt.Println(n) 23 if n == 0 { 24 break 25 } 26 w.Write(buf[0:n]) 27 } 28 }
結果:
8
0
13353535
執行外部程序
1 package main 2 3 import ( 4 "os/exec" 5 ) 6 7 func main() { 8 cmd := exec.Command("D:/1.exe") 9 cmd.Run() 10 }
 
                    
                     
                    
                 
                    
                 
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号