2014年2月9日 上午7:35于 "Alex Crichton" <[email protected]>写道: > > We do indeed want to make common tasks like this fairly lightweight, > but we also strive to require that the program handle possible error > cases. Currently, the code you have shows well what one would expect > when reading a line of input. On today's master, you might be able to > shorten it slightly to: > > use std::io::{stdin, BufferedReader}; > > fn main() { > let mut stdin = BufferedReader::new(stdin()); > for line in stdin.lines() { > println!("{}", line); > } > } > > I'm curious thought what you think is the heavy/verbose aspects of > this? I like common patterns having shortcuts here and there! >
This is not a common pattern for stdin. Programs often need process something when user press return key, immediately. So read one line is more useful than read multiple lines, at least for stdin. I agree to need stdin.readln or read_line. > On Sat, Feb 8, 2014 at 3:06 PM, Renato Lenzi <[email protected]> wrote: > > I would like to manage user input for example by storing it in a string. I > > found this solution: > > > > use std::io::buffered::BufferedReader; > > use std::io::stdin; > > > > fn main() > > { > > let mut stdin = BufferedReader::new(stdin()); > > let mut s1 = stdin.read_line().unwrap_or(~"nothing"); > > print(s1); > > } > > > > It works but it seems (to me) a bit verbose, heavy... is there a cheaper way > > to do this simple task? > > > > Thx. > > > > _______________________________________________ > > Rust-dev mailing list > > [email protected] > > https://mail.mozilla.org/listinfo/rust-dev > > > _______________________________________________ > Rust-dev mailing list > [email protected] > https://mail.mozilla.org/listinfo/rust-dev
_______________________________________________ Rust-dev mailing list [email protected] https://mail.mozilla.org/listinfo/rust-dev
